If Java had true Garbage collection, most programs would delete themselves upon execution.
This is so true! Anyways, getting back to the main topic... Switching from 32 bit to 64 bit is good for someone who writes programs that need vast quantities of memory. Examples would be search engines or graphics based games. Being a person who writes tiny programs that could very well run on a 286 I wouldn't be able to tell you how much of a better performance you would get out of a 64 bit machine other than more memory and faster additions. If you follow the language standard well, i.e. use ints and sizeof() you should be fine. C tends to be a very portable language. You can probably compile something on a 32 bit machine from a 16 bit machine like a 286. I work on a 32 bit machine but like I said my programs probably could run on a 16 bit machine and probably even a 64 bit one although that would not do anything for me. Bottom line - think of moving up from a 32 bit machine to a 64 bit machine as moving from a 16 bit machine to a 32 bit machine. If I remember a 16 bit machine could only access 1 MB? Right? Bitmaps used to only be able to fit into 64 KB segments. Now they can take up 4 GB. So what's going to have to change is not your program but the resources that it accesses and how it does it. If you are fine with the current size of your resources then your work is done. I guarentee it!