C++/Beginning a Programming language
Expert: vijayan - 2/6/2009
QuestionI am still in High School and would like to learn a programming language. I feel it would help me to get a jump start on my future. My question is: What programming language should I learn? There are so many languages out there. What should I start with, and how should I learn it? Thanks for any help! I appreciate your time and energy very much!!!
AnswerI would recommend lisp.
You are still in high school, you would get an opportunity to learn mainstream languages like C++ or java as part of your normal education. So why not learn a language which may not be taught in school, but would help making you a better programmer in *any* language?
Eric Raymond has written an essay called "How to Become a Hacker", and in it, among other things, he tells would-be hackers what languages they should learn. He suggests starting with Python and Java, because they are easy to learn. A hacker will also want to learn C/C++ and Perl. Finally, the truly serious hacker should consider learning Lisp:
"Lisp is worth learning for the profound enlightenment experience you will have when you finally get it; that experience will make you a better programmer for the rest of your days, even if you never actually use Lisp itself".
"The question is not whether Lisp..but rather 'when'" - Paul Graham
"..Lisp, and Haskell are the only programming languages that I've seen where one spends more time thinking than typing." - Philip Greenspun
to have a first look at what lisp is like, see:
http://www.ibm.com/developerworks/java/library/j-cb02067.html
and have a look at this lisp FAQ:
http://www.paulgraham.com/lispfaq1.html
free common lisp implementations:
windows:
http://www.eurodownload.com/download-software/86577/Ufasoft-Common-Lisp.html
unix:
http://sourceforge.net/projects/clisp/
many more:
http://www.thefreecountry.com/compilers/commonlisp.shtml