Programming Language Checklist (2011)

  • Slashdot answer. Like this one: https://tech.slashdot.org/comments.pl?sid=218300&cid=1771910...

    Love these responses.

  • I often wonder what it is about the programmer mindset/psychology that curses such constant reinvention(/reinvention?). Is this an unavoidable side effect of Moore's law? Will we settle on just a few languages in the future? Will llms allow easy translation from less popular languages?

  • imv, we're still missing a C replacement-successor

    There should be a language about as simple as c, with a few additional keywords for safety (type and memory), and a modern standard library -- that works basically everywhere C works, and is backwards compatible with C.

    ie., we're missing --C++

    I think all the supposed successors have approached the problem from the lang-design pov, where for C, it needs to be from-existing-compilers-and-tools pov.

    I suspect there's a route to C v2 by starting with the C std, and gcc/clang, then working "forwards". Similar to cppfront for C++.

    ie., it needs to compile 99% of all existing C code, it needs to compile to 90% of all in-use platform for C, etc.

  • Quite funny, but I want people to advance the state of the art.

    Does C++ / Java / Python really represent the high water mark of programming languages? I sure hope not…

  • We have "No language spec" and "The implementation is the spec". Sooo, languages with a spec are strictly superior?

  • I've tried updating it to 2024: https://gist.github.com/boppreh/3b88231b7af15af54d292963f3d7...

  • This is kind of accurate and funny, but also feels a bit like criticizing the drawing of a 4-year-old kid. :) At least when a language is just someone's hobby project, or some exploration in research.

  • what we need is a gradually typed lazy / eager language that helps to combine functional, imperative, concurrent and object-oriented styles, allows functions to use method syntax (and vice versa), with (and without) sigils & twigils, and an entirely new regex syntax that packs a whole ragbag of weird stuff such as unicode graphemes, grammars, junctions, allomorphs, sequences, hyper (>>) and (Z/R) metaoperators, sets, bags and mixes, coercion types and a MOP then we can check all the boxes (aka raku)

  • To me what’s missing is a functional programming language that is statically typed and has an extreme emphasis on performance. C++ meets Haskell, but not terrible.