3 ms·
Most programming languages have underwhelming origin stories and are evolutionary hodgepodges held together with hot glue. The most likely opposite to "basical
by WorldMaker 4y ago
Most programming languages have underwhelming origin stories and are evolutionary hodgepodges held together with hot glue.
The most likely opposite to "basically invented overnight" is "designed by committee", and is that much preferable?
Origin stories aren't the end of the story either. Humble origins aside, JS has had many of the best minds in many of the largest companies contribute all sorts of feature work and performance efforts across a span of decades. How many languages can claim that many eyeballs and that diverse a set of language developers and engine writers?
Sure, a lot of it looks like a hodgepodge, especially with its mandatory, deep respect for backward compatibility, because no one wants to break an old website. But show me the language with any respect for backward compatibility that doesn't look like a hodgepodge?
Core systems languages like C and C++ started out as intentional hodgepodges. Their macro system was originally its own, different, language brought in from another existing project for some temporary duty, and now enshrined in the language as a forever feature.
Hodgepodges are how languages are built and evolved. That's how we got ourselves here: the natural way. Every programming language on the planet is its own beautiful house of cards, built piece at a time. Don't just look down on JS because it went "mainstream".
- PaulHoule 4y agoCommon Lisp and Java were two of the first languages designed by adults and they broke those trends.
- amalgamated_inc 4y agoI've never used CL but heard it's very "design by committee." Java is worse than JS. So yea, maybe hodge podge is actually the best option we have.
- WorldMaker 4y agoYeah, the "Common" in Common Lisp comes from committee. Lisp itself was a "basically designed overnight" language that became an incredibly popular hodge podge of a million snowflake variants and then eventually two competing attempts to standardize and clean up the hodge podge happened: Scheme (to my understanding a BFDL-like situation of a strong figure building anew, with few backwards compatibility cares) and Common Lisp (a standards committee and then some, with a bunch of backwards compatibility shenanigans to sort out). (ETA: I am a fan of Common Lisp, for what that is worth, if this sounds too critical. It's a very nice language. Some of what has made it nice was a massive committee and standards effort, very similar to the way JS has continued to evolve under TC-39 stewardship.) Also yeah, my impression of Java was that it was very design-by-committee.
- lispm 4y ago> Lisp itself was a "basically designed overnight" language Roughly "overnight" for six years: http://jmc.stanford.edu/articles/lisp/lisp.pdf http://jmc.stanford.edu/articles/lisp/lisp.pdf
- WorldMaker 4y agoPer that own history, the first version "Lisp 1" was written as a project in a single University semester. Compared to the many committee years of, for instance, ALGOL, that is "basically overnight" by comparison.
- lispm 4y agoThe implementation of the first and relatively primitive version took roughly a year. McCarthy had two full-time programmers and six graduate students working for him.