
Frezik
Brutor tribe
|
Posted - 2007.09.13 15:39:00 -
[1]
Originally by: Dark Shikari For example, in Python you can literally do (2,3,4) + (5,6,7) and get (2,3,4,5,6,7).
I would have expected that statement to do matrix arithmetic rather than list appending. Operating overloading can be a trap like that.
Originally by: Jim McGregor I dont believe you need to go all the way from low level languages like C and C++ and then move into Java and so on.
Gotta learn C at some point, if only because someday you'll want to interface to a C library from another language, which usually requires at least a little bit of C knowledge.
Originally by: Polonium 210 I would recommend plain C (preferrable) or Pascal for the beginning, just to try and check if it is interesting work for you. If you get caught with it, try a bit of Assembler then, just to know what is really happening behind the lines of high-level languages.
I'd never recommend C or Assembly as first languages (and surly not Pascal). There's no reason to go that low-level from the beginning. Plus, they're only low-level from a hardware point of view, whereas you should be learning low-level from a computational point of view. And for that you want Lisp. (Though I wouldn't necessarily recommend that as a first language, either).
Originally by: Cpt Placeholder Otherwise to fool around you could go with C# I guess... but thats a pretty stupid language in my opinion, besides that it's owned by Microsoft and runs only on Windows as far as I know.
C# will run on a lot of platforms, though Windows.Form support (which holds a lot of the GUI stuff) isn't always available outside Windows. The runtime is generally faster and less memory-hungry than any Java runtimes, too. It has a few language features over Java, but still has an overengineered library that focuses more on OO-purity rather than good sense. In any case, if I had to choose, I'd pick C# over Java.
To the OP, Python and Ruby are both excellent choices as first languages. OCaml would be a great second language, since learning to use a strong type system is a fantastic tool (a real strong type system, not those half-witted type systems they put in C/C++/C#/Java).
|