2 ms·
A programming language can partially influence the way you think (a form of Whorfianism http://en.wikipedia.org/wiki/Linguistic_relativity http://en.wikipedia.o
by 6ren 15y ago
A programming language can partially influence the way you think (a form of Whorfianism http://en.wikipedia.org/wiki/Linguistic_relativity http://en.wikipedia.org/wiki/Linguistic_relativity), but a PL is a poor substitute for actual thought.
Thinking in terms of any programming language limits the ways you can model problems and solutions. Of course, learning ways of modeling expands your repertoire. I would hesitate to say that "programming languages" are the richest source of such models. Even within them, features like dynamic typing and closures are less significant than logic/constraint programming - or GPGPU languages.
On a separate issue, we can also see programming languages as an instance of exponentially improving technology (Kurzweil). I haven't seen a chart of the productivity improvements of "programming languages" over time, but certainly there's no contention over the dramatic improvements from raw machine code, to assemblers, to compilers etc.
The mechanism is the same as for increasing returns for technologies: standing on the shoulders of giants, and seeing further, especially ways of doing things (the meaning of "technology"). That is, we create the next generation of programming languages using the previous generation (and benefiting from their productivity). e.g. we wrote compilers with assemblers, then with compilers, and then with specialized tools (yacc, lex etc).
At the forefront of technology, it's not always obvious which ways will turn out to be best til afterwards - it's an exploration of the news, which is unknown by definition. Anyone who thinks they know the answers before they start exploring misunderstands the nature of exploration. Before we have definite facts, we have opinions and contention - which is all for the good, if it causes people to look harder rather than argue blindly.