Topics that I think will be important: - Functional Programming - Logic Programming - Managing asynchronicity - Managing concurrency / Managing state - Pruning bad directions in OO (see the first two) - Type Systems - Virtual Machines Languages/technologies that I would look at more closely given these are Haskell, Scheme, Prolog, Clojure, Qi, LLVM. I love JS but as far languages go, I would not look there for new id…
Both your list and your comments look good, generally, but I have to wonder about your mention of logic programming. I think logic programming has a lot to offer the world, in theory, but in practice it seems to be pretty much dead. True, there is probably more going on with Prolog now than, say, a decade ago. But widespread use is not happening, nor is inclusion of logic-programming features into other languages. Fu…
Logic programming + meta-programming as well as Logic programming powered RTEPLs (Read-Typecheck-Eval-Print-Loop) can give us optional rich, strong guarantees without adversely affecting runtime performance. This is a space that needs more exploration.