What's the next innovation in the computer language landscape?
- Punch cards
- Machine instructions, Assembler
- C and native languages
- Managed, Interpreted and Garbage Collected systems<p>What do you envision as the next step in this journey?
I would expect that mixing dynamic & static typing still is an area that could lead to some language breakthroughs.<p>Dynamic typing is great for exploratory programming and static typing offers additional correctness guarantees.<p>Some work has been done in Haskell, Clojure and Racket in this direction (allowing static and dynamic types to co-exist) but I think lots more is possible.
I think that we are only scratching the surface as regards support for static analysis and automated refactoring.<p>Also, I think that we will start to apply some of the machine learning and statistical pattern recognition techniques that have become so "du jour" recently to programming - enabling development tools to do some really sophisticated things.
I'll take a stab:<p>* Concurrency support at the language level.<p>* Immutable data structures becoming the default.<p>Making Clojure (2/2) and Go (1/2) some up-and-comers. Erlang probably deserves some credit, but I'm not familiar with it.