5 ms·
The languages that last in a through-the-ages sense tend to be conspicuously small and own their domains well. Regular expressions are one such example - there
by megameter 6y ago
The languages that last in a through-the-ages sense tend to be conspicuously small and own their domains well. Regular expressions are one such example - there are a few variations of syntax, but the basic idea has never changed, so it hasn't experienced the kind of drift you have when you're looking at a large ecosystem with lots of dependencies like browser JavaScript. Data serialization languages like CSV and JSON fall in this category too - they're simple enough to be used poorly, but that's also what makes them good enough.
Once you start looking at big applications languages that integrate a lot of features, it's a great wad of maintenance effort that you're hoping someone else mostly takes care of. None of them are really all that stable over the long run.
And there really are two kinds of code projects - the ones where you're maintaining it and the ones where someone else is maintaining it. If your work is open-source and popular you can end up being more of a maintainer than you anticipated, and really, you only have headspace for one or two of those maintenance projects, so while they're good learning experiences, you don't want to take them on lightly.
- saurik 6y ago> The languages that last in a through-the-ages sense tend to be conspicuously small and own their domains well. Huh: I would argue the languages with outsized influence/spread--and certainly the ones that both have lasted and which I expect to last--tend to be some combination of "evolved" and design by committee nightmares... including specifically the somewhat poorly-named "perl-compatible" regular expressions, which aren't even "regular" and have a lot of seemingly arbitrary syntax that had been born out of various evolutions of the core concept, that have both come to dominate and somewhat define the world of regular expressions. I feel like if you look at the "great" and enduring languages they are all of this character--whether it be JavaScript or C++ or sh or even SQL (or libraries that form DSLs, like OpenGL)--and that that shouldn't really be surprising as that's also how natural languages (as in, those spoken by humans) are maintained, with lots of slightly-incompatible splinters around a slowly drifting core that is continually being extended: a language that hasn't reached this stage is more of a "product" than a "language" and we see them come and go over timescales sometimes notably less than even a single decade, whereas languages with this property seem almost immortal... the one particularly notable example I can think of of a "natural programming language" drifting into obscurity is Lisp (by which I am referring largely to Common Lisp as the center of attention in a fractured environment that led to remarkable and almost ridiculous complexity around something most people incorrectly assume was trivial), which had a really really long run of it and is in some sense the Latin of our space (like... for a language which is almost never used anymore, we sure talk about it a lot ;P). It is the dominance of these languages that, to me, makes the study of linguistics tied to and intersecting the study of programming languages so fascinating.