• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 02:36
CEST 08:36
KST 15:36
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
[ASL22] Ro8 Preview: In A Tizzy7[ASL22] Ro16 Preview: Holy Diver5[ASL22] Ro16 Preview: Rough Waters10[ASL22] Ro24 Preview: Siren's Call8[ASL22] Ro24 Preview: Summer's End9
Community News
Weekly Cups (Sep 13-20): herO scores triple1BSL Season 235Weekly Cups (Sep 7-12): SHIN, ByuN, MaxPax double down1StarCraft open world shooter announced at BlizzCon101Weekly Cups (Aug 30-Sep 7): herO thrives amid growing schism10
StarCraft 2
General
How do you feel about the StarCraft shooter announcement at BlizzCon 2026? Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool The Death of Cheese: From a Professional Cheeser Weekly Cups (Sep 13-20): herO scores triple Balance hotfix patch 5.0.16b (July 16)
Tourneys
2026 GSTL Announcement Sparkling Tuna Cup - Weekly Open Tournament RSL Revival: Season 6 - Qualifiers and Main Event RSL goes to London! 2026 Offline Finals Nov 21-22 SC2 AI Tournament 2026 Fall
Strategy
[H] ZvP Mid-Late Game: Stalkers Collossi HT
Custom Maps
Nexus Wars 2021 GUIDE [M] (2) Industrial Park
External Content
Mutation # 544 Double Trouble The PondCast: SC2 News & Results Mutation # 543 Enhanced Defenses Mutation # 542 The Ascended
Brood War
General
Bot on ladder Guide To Watching Ancient Brood War Replays Oldest replay file. new ranked ladder hack? New 3v3 BGH Ladder (and more) on ShieldBattery!
Tourneys
[ASL22] Ro8 Day 2 [ASL22] Ro8 Day 1 [IPSL] IPSL is Back With Winter 26-27! [BSL23] SM: Ret vs TerrOr -> DragOn vs StRyKeR
Strategy
Cliff Jump Revisited (1 in a 1000 strategy) Replay Review Process - What do you do? Simple Questions, Simple Answers Odyssey Mineral Stack Saturation
Other Games
General Games
Warcraft III: The Frozen Throne Nintendo Switch Thread Stormgate/Frost Giant Megathread EVE Corporation Diablo IV
Dota 2
Dota 2 Champions League Season 3 Begins April 25! Official 'what is Dota anymore' discussion
League of Legends
[TL LoL EUW IHs] Teemo shall perish
Heroes of the Storm
Heroes of the Storm 2.0
Hearthstone
Deck construction bug
TL Mafia
TL Mafia Community Thread
Community
General
US Politics Mega-thread Artificial Intelligence Thread Things Aren’t Peaceful in Palestine All you football fans (soccer)! Russo-Ukrainian War Thread
Fan Clubs
MarineLorD Fan Club The Creator Fan Club The ShoWTimE Fan Club
Media & Entertainment
Movie Discussion! [Manga] One Piece Diablo Animated Series on Netflix
Sports
Football (Soccer) Thread TeamLiquid Health and Fitness Initiative For 2023 MLB/Baseball 2023
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread
TL Community
Recent Gifted Posts
Blogs
Gaming Intensity, Problemati…
TrAiDoS
38 yo Retired SWE loo…
PurE)Rabbit-SF
Can Bots Beat Pros?? Starcr…
namkraft
[meme] I finally understa…
LUCKY_NOOB
Regacy Esports:Our Goa…
regacyesports
Dreaming of BW patches (mod…
c3rberUs
Customize Sidebar...

Website Feedback

Closed Threads



Active: 7089 users

The Big Programming Thread - Page 588

Forum Index > General Forum
Post a Reply
Prev 1 586 587 588 589 590 1032 Next
Thread Rules
1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution.
2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20)
3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible.
4. Use [code] tags to format code blocks.
Blitzkrieg0
Profile Blog Joined August 2010
United States13132 Posts
Last Edited: 2015-02-16 03:06:41
February 16 2015 03:04 GMT
#11741
On February 16 2015 11:58 travis wrote:
Show nested quote +
On February 16 2015 11:44 berated- wrote:
On February 16 2015 06:57 travis wrote:
nope, because myList saves a reference to the object, not the object's values.

So myList[0] would point to myObject, myList[1] would point to myObject, myList[3] would point to myObject, etc.

then if myObjects values change, it will say the new values regardless of which myList you call.



Blitzkrieg's solution was to just make myList[counter] = new myObject, which I am assuming makes the position in the arraylist the actual reference, instead of making the position in the arraylist hold a reference. that's what I think is happening there, at least.


That's actually false, and not how java works. You should listen to Ropid. While that way may be confusing, it would not set all the objects to the same thing.


that's not what I've read. what I've read is that if you create 2 instances and they have the same reference name, then every reference with that name will point to the newest instance. so, i really don't understand why this wouldn't do that.


It does work like they're saying.

Basically you have a reference to an object. You create a new object and set the reference to that object. Then you copy that reference into the array. Then when you loop you're creating a new object and placing a reference to it in the same place. The new object has a different address so when you add it to the array it will be a unique object.

There is no point doing this copy action though. You should just save the object into the array when you make it.
I'll always be your shadow and veil your eyes from states of ain soph aur.
Deleted User 3420
Profile Blog Joined May 2003
24492 Posts
February 16 2015 03:09 GMT
#11742
I really should have understood that faster to be honest. Makes me feel dumb lol
berated-
Profile Blog Joined February 2007
United States1134 Posts
Last Edited: 2015-02-16 03:14:48
February 16 2015 03:14 GMT
#11743
On February 16 2015 12:09 travis wrote:
I really should have understood that faster to be honest. Makes me feel dumb lol


I've been doing this for 11 years and still had to write a main method to prove it to myself before posting... as long as you get it figured out keep learning I wouldn't feel too bad about it.
Blisse
Profile Blog Joined July 2010
Canada3710 Posts
Last Edited: 2015-02-16 07:40:23
February 16 2015 07:39 GMT
#11744


LOL


and yeah you really need to work a lot with C for a while before some things about references start clicking faster, sometimes i find myself wondering wtf is going on with & and then * and then *(*(&spp_var)) and then i meet a new operator && which is something about RHS or something

summoning nunez, what is &&variable in the parameter pls :d (http://stackoverflow.com/questions/4549151/c-double-address-operator)
There is no one like you in the universe.
Manit0u
Profile Blog Joined August 2004
Poland17843 Posts
Last Edited: 2015-02-16 09:23:12
February 16 2015 08:47 GMT
#11745
Something that finally taught me some stuff about references was this:


void strcpy(char *p, const char *q) {
while (*p++ = *q++);
}


Understanding how this code works made my jaw drop at how beautifully designed it is (apart from possible buffer overflow of course).
Time is precious. Waste it wisely.
netherh
Profile Blog Joined November 2011
United Kingdom333 Posts
February 16 2015 12:34 GMT
#11746

summoning nunez, what is &&variable in the parameter pls :d (http://stackoverflow.com/questions/4549151/c-double-address-operator)


It's a reference to an object whose state we don't care (much) about after the function returns (e.g. a temporary object). This allows destructive, but efficient things, such as move operations to happen using that parameter.

Praise Visual Studio!

/discount nunez
pedrlz
Profile Joined September 2012
Brazil5234 Posts
February 16 2015 15:36 GMT
#11747
So I decided to start learning a programming language (again!). I decided that clojure doesn't have much material for starters and I get a little lost after doing the most tutorials that I found so I decided to change for python because it seems the most similar language from the mainstream (I might just be completely wrong, don't be too harsh with me pls).

I wanted a book to study instead of using web tutorials since I usually like to lie on my bed and read something before sleep. What books do you recommend for python? Think Python is good enough? Should I try others? Thanks.
Manit0u
Profile Blog Joined August 2004
Poland17843 Posts
Last Edited: 2015-02-16 15:42:46
February 16 2015 15:40 GMT
#11748
On February 17 2015 00:36 pedrlz wrote:
So I decided to start learning a programming language (again!). I decided that clojure doesn't have much material for starters and I get a little lost after doing the most tutorials that I found so I decided to change for python because it seems the most similar language from the mainstream (I might just be completely wrong, don't be too harsh with me pls).

I wanted a book to study instead of using web tutorials since I usually like to lie on my bed and read something before sleep. What books do you recommend for python? Think Python is good enough? Should I try others? Thanks.


http://learnpythonthehardway.org/

It's a free web tutorial (and a good one at that) but you can always buy the book for it if you feel like it.

Don't try others. Start with either Python (getting into it is relatively easy) or C (simple language but much more daunting - here's a tutorial, you can check out if it's for you or not) and go with it. The author of both tutorials actually recommends doing the Python stuff before C, since C is targeted at people who are at least somewhat familiar with basic programming concepts.

P. S.

The newest gem I've found at work. Awesome class name: ReasonOfUnable.
Time is precious. Waste it wisely.
CorsairHero
Profile Joined December 2008
Canada9491 Posts
February 16 2015 17:08 GMT
#11749
On February 14 2015 14:47 BisuDagger wrote:
Show nested quote +
On February 14 2015 06:13 CorsairHero wrote:
anyone linux users that are believers in vim here? I'm too used to using windows text based editors -_-

As someone who hates developing in Linux, vim is the only way to go. Learning how to develop using vim helps make you a smart and efficient programmer. It's also great to know because vim is on all Linux devices and you may find yourself without an ide available to edit code on during delivery of a company project. Bottom line, the skill is to damn important to pass up. So don't be cheap and get 'practical vim' off Amazon now and become a wizard.

thanks, i'll take a look at it. I'm also looking at using nerdtree plugin as well for file system access...seems useful.
© Current year.
bangsholt
Profile Joined June 2011
Denmark138 Posts
February 16 2015 17:54 GMT
#11750
On February 16 2015 17:47 Manit0u wrote:
Something that finally taught me some stuff about references was this:


void strcpy(char *p, const char *q) {
while (*p++ = *q++);
}


Understanding how this code works made my jaw drop at how beautifully designed it is (apart from possible buffer overflow of course).


And you probably learned a bit about operator precedence as well ;o)
Blisse
Profile Blog Joined July 2010
Canada3710 Posts
February 16 2015 18:17 GMT
#11751
apparently there's no operator precedence in play with *p++
There is no one like you in the universe.
Blitzkrieg0
Profile Blog Joined August 2010
United States13132 Posts
Last Edited: 2015-02-16 18:44:00
February 16 2015 18:21 GMT
#11752
On February 17 2015 03:17 Blisse wrote:
apparently there's no operator precedence in play with *p++


You have to know if it will post-increment the pointer or the dereference. One of the options doesn't make sense so the answer is apparent, but it is still nifty.

That isn't going to help Travis though because java doesn't have pointers.
I'll always be your shadow and veil your eyes from states of ain soph aur.
Cyx.
Profile Joined November 2010
Canada806 Posts
February 16 2015 23:44 GMT
#11753
On February 17 2015 00:40 Manit0u wrote:
Show nested quote +
On February 17 2015 00:36 pedrlz wrote:
So I decided to start learning a programming language (again!). I decided that clojure doesn't have much material for starters and I get a little lost after doing the most tutorials that I found so I decided to change for python because it seems the most similar language from the mainstream (I might just be completely wrong, don't be too harsh with me pls).

I wanted a book to study instead of using web tutorials since I usually like to lie on my bed and read something before sleep. What books do you recommend for python? Think Python is good enough? Should I try others? Thanks.


http://learnpythonthehardway.org/

It's a free web tutorial (and a good one at that) but you can always buy the book for it if you feel like it.

Don't try others. Start with either Python (getting into it is relatively easy) or C (simple language but much more daunting - here's a tutorial, you can check out if it's for you or not) and go with it. The author of both tutorials actually recommends doing the Python stuff before C, since C is targeted at people who are at least somewhat familiar with basic programming concepts.

P. S.

The newest gem I've found at work. Awesome class name: ReasonOfUnable.


My favourite 'learn to program if you don't know anything at all' resource: Non-Programmer's Guide to Python 3. I learned with it, my girlfriend is learning with it... I love it, it makes things really easy for people who know literally nothing about programming. Sorry, it's not a book, but it's really good for learning with practical, simple examples which require you to be at your computer anyways
Shield
Profile Blog Joined August 2009
Bulgaria4824 Posts
Last Edited: 2015-02-16 23:49:43
February 16 2015 23:47 GMT
#11754
On February 16 2015 17:47 Manit0u wrote:
Something that finally taught me some stuff about references was this:


void strcpy(char *p, const char *q) {
while (*p++ = *q++);
}


Understanding how this code works made my jaw drop at how beautifully designed it is (apart from possible buffer overflow of course).


It's actually not as readable as it should be. And what happens if p's length isn't equal to q's length? Undefined behaviour?
tofucake
Profile Blog Joined October 2009
Hyrule19257 Posts
February 16 2015 23:50 GMT
#11755
overflow or segfault
Liquipediaasante sana squash banana
Blitzkrieg0
Profile Blog Joined August 2010
United States13132 Posts
Last Edited: 2015-02-16 23:56:44
February 16 2015 23:54 GMT
#11756
On February 17 2015 08:47 darkness wrote:
Show nested quote +
On February 16 2015 17:47 Manit0u wrote:
Something that finally taught me some stuff about references was this:


void strcpy(char *p, const char *q) {
while (*p++ = *q++);
}


Understanding how this code works made my jaw drop at how beautifully designed it is (apart from possible buffer overflow of course).


It's actually not as readable as it should be. And what happens if p's length isn't equal to q's length? Undefined behaviour?


If p is greater than q then it doesn't matter. If q is larger then you either segfault from accessing protected memory or you're overwriting memory that you shouldn't be.

The function expects a null terminated string so you can also run into problems if your string isn't null terminated. This makes the length of q undefined because it will copy characters until it hits a null character.
I'll always be your shadow and veil your eyes from states of ain soph aur.
Ropid
Profile Joined March 2009
Germany3557 Posts
February 17 2015 00:32 GMT
#11757
On February 17 2015 00:36 pedrlz wrote:
So I decided to start learning a programming language (again!). I decided that clojure doesn't have much material for starters and I get a little lost after doing the most tutorials that I found so I decided to change for python because it seems the most similar language from the mainstream (I might just be completely wrong, don't be too harsh with me pls).

I wanted a book to study instead of using web tutorials since I usually like to lie on my bed and read something before sleep. What books do you recommend for python? Think Python is good enough? Should I try others? Thanks.

Clojure is probably super different from normal mainstream stuff. Data is "immutable" by default, meaning it can't be changed after it's created, and people seem to try to keep that up as much as possible. They write "purely functional" code as much as they can.

In normal imperative thinking, you write code where you take a reference to data, then you run over the data and do the required changes.

In a functional style, your functions only look at the input data and do not touch it, the required changes only show up in the result of the function.

This should need help from the programming language itself or performance will be shit. If the compiler/interpreter knows that the things you work with are always immutable, it might be able to do something smart instead of making copies of everything all the time.

I struggle with the stuff and can't come up with good examples that shows that it's an interesting idea (I'm just a noob trying to learn enough Haskell that I can do something actually useful with it). Working like this is pretty mind blowing in practice coming from a "normal" imperative background, so that's fun. For some reason, complicated ideas end up as super compact code compared to the usual imperative code. When you do changes to your code, you can kind of look at the code as if it's some sort of math/logic proof, and you can then often be very confident that something is still correct after your changes, and then it actually is correct and bug-free. I guess that's the big upside.

Clojure then also is some sort of Lisp and can do Lisp stuff. I guess the big deal with that is "meta-programming"? Here's stuff to promote Lisp:

http://www.paulgraham.com/avg.html (this is some general marketing for Lisp)
http://www.defmacro.org/ramblings/lisp.html (this is trying to explain metaprogramming and why it's neat)

I have no idea what other language with similar ideas to suggest with regards to a good, easy introduction. It's all very hard for me.

Were those even the reasons you started looking at Clojure?
"My goal is to replace my soul with coffee and become immortal."
Manit0u
Profile Blog Joined August 2004
Poland17843 Posts
February 17 2015 02:24 GMT
#11758
On February 17 2015 08:54 Blitzkrieg0 wrote:
Show nested quote +
On February 17 2015 08:47 darkness wrote:
On February 16 2015 17:47 Manit0u wrote:
Something that finally taught me some stuff about references was this:


void strcpy(char *p, const char *q) {
while (*p++ = *q++);
}


Understanding how this code works made my jaw drop at how beautifully designed it is (apart from possible buffer overflow of course).


It's actually not as readable as it should be. And what happens if p's length isn't equal to q's length? Undefined behaviour?


If p is greater than q then it doesn't matter. If q is larger then you either segfault from accessing protected memory or you're overwriting memory that you shouldn't be.

The function expects a null terminated string so you can also run into problems if your string isn't null terminated. This makes the length of q undefined because it will copy characters until it hits a null character.


Well, that's actually part of the beauty of this function. Analysing it has taught me more about C, pointers, buffer overflows, user safe code (since it is one of those functions that let hackers take over your entire system) etc. than anything else. Making it user safe and guarding against buffer overflows is a good learning exercise too. For example you could use memcpy to do the job.
Time is precious. Waste it wisely.
bypLy
Profile Joined June 2013
757 Posts
February 17 2015 09:53 GMT
#11759
hey i was wondering if there is way to get a domain registered for free, including emails, and all the stuff necessary to make an own website
Manit0u
Profile Blog Joined August 2004
Poland17843 Posts
Last Edited: 2015-02-17 10:48:21
February 17 2015 10:22 GMT
#11760
On February 17 2015 18:53 bypLy wrote:
hey i was wondering if there is way to get a domain registered for free, including emails, and all the stuff necessary to make an own website


If you want free hosting then I believe that you can get it with Amazon AWS. Some low-level EC2 instances are free of charge if they don't generate too much traffic (you start paying some low fees after exceeding transfer treshold, but it's relatively high for simple sites).
Time is precious. Waste it wisely.
Prev 1 586 587 588 589 590 1032 Next
Please log in or register to reply.
Live Events Refresh
Next event in 3h 24m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
WinterStarcraft559
StarCraft: Brood War
Rain 2256
GuemChi 1434
sorry 52
zelot 23
yabsab 17
ajuk12(nOOB) 11
Noble 10
Icarus 8
Dota 2
NeuroSwarm166
League of Legends
JimRising 621
Heroes of the Storm
Trikslyr32
Other Games
summit1g10418
PiGStarcraft356
Happy325
C9.Mang0318
Maynarde130
Livibee123
Mew2King69
Organizations
Dota 2
PGL Dota 2 - Main Stream878
Other Games
gamesdonequick761
BasetradeTV52
[ Show 12 non-featured ]
StarCraft 2
• mYiSmile19
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• Migwel
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Dota 2
• lizZardDota2267
League of Legends
• Rush1486
• Stunt510
Upcoming Events
Sparkling Tuna Cup
3h 24m
Afreeca Starleague
3h 24m
Light vs EffOrt
OSC
5h 24m
PiGosaur Cup
17h 24m
Kung Fu Cup
1d 4h
The PondCast
2 days
Replay Cast
2 days
Korean StarCraft League
3 days
CranKy Ducklings
4 days
GSL
5 days
[ Show More ]
Yamato Cup
5 days
Replay Cast
5 days
Afreeca Starleague
6 days
WardiTV Weekly
6 days
Liquipedia Results

Completed

Super Anchor Qualifying S3
Blizzard Classic Cup 2026
Big Dog Cup 2026 Div 1

Ongoing

ASL Season 22
CSL 2026 AUTUMN (S22)
Acropolis #5
Acropolis #5 - GSA
Calamity Invitational
Logitech G Play Connect 2026
SL StarSeries Fall 2026
FISSURE Playground #3
BLAST Open Fall 2026
Esports World Cup 2026
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026

Upcoming

Acropolis #5 - GSB
Acropolis #5 - GSC
BSL Season 23
SC4ALL II: Brood War
BSL 23: Non-Korean Championship
HSC XXX
Stellar Fest 2: Lunar Cup
SC4ALL II: StarCraft II
Kung Fu Cup 2026 Grand Finals
RSL Offline Finals
Copium Cup
PGL Major Singapore 2026
Stake Ranked Episode 6
BLAST Rivals Fall 2026
IEM Beijing 2026
Stake Ranked Episode 5
PGL Masters Bucharest 2026
1win Private Club #2
Thunderpick World Champ. '26
ESL Pro League Season 24
Stake Ranked Episode 4
1win Private Club #1
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.