Every programmer I know who has learned Lisp (that is, some Lisp dialect) thinks that was very helpful for learning how to think better about approaching programs. It's especially the functional approach to programming that my son misses when, for example, he has to write code for a numerical computing class in MatLab rather than in Haskell, his current favorite language.
No, ingenuity isn't restricted to a single language. Besides after you have your eyes opened to new experiences in other languages your first language doesn't matter that much. When you first pick up a new language sure you drag your old programming habits into it but if you make the effort\spend the time in the new language you will pickup its habits after a while.
It would be very tempting for me just to answer "yes, it's very important" or "not, it doesn't matter at all" with appropriate arguments, but I don't think any of those answers could reflect in full what I actually think.
It's very important. Your effectiveness as a programmer depends on which languages you can use when solving problems. Also how easy it will be to extend your program in the future depends (among other things) on which language you've chosen.
If you want a language to reflect your thoughts as directly as possible you may want to use one of the problem-oriented languages (R for statistics, Erlang for fault-toleranse servers, Python for scripts etc).
I think that language matters, because the right chosen one usually increases your efficiency when it comes to writing a specific applicatoin.
It doesn't matter.
In short: it doesn't matter how sharp a sword in your hand is if you are a master of swords.
My current languages-to-learn list is: [Erlang | [Haskell, OCaml, Lisp, Python, R]]
4 comments
[ 3.1 ms ] story [ 16.0 ms ] threadIt's very important. Your effectiveness as a programmer depends on which languages you can use when solving problems. Also how easy it will be to extend your program in the future depends (among other things) on which language you've chosen.
If you want a language to reflect your thoughts as directly as possible you may want to use one of the problem-oriented languages (R for statistics, Erlang for fault-toleranse servers, Python for scripts etc).
I think that language matters, because the right chosen one usually increases your efficiency when it comes to writing a specific applicatoin.
It doesn't matter.
In short: it doesn't matter how sharp a sword in your hand is if you are a master of swords.
My current languages-to-learn list is: [Erlang | [Haskell, OCaml, Lisp, Python, R]]