8 ms·
Every so often, I think about the meme of the 100 year language. The idea is that we need to start working towards the languages we'll use in 100 years. Instead
by hyperpape 10y ago
Every so often, I think about the meme of the 100 year language. The idea is that we need to start working towards the languages we'll use in 100 years. Instead, I wonder how many we already have.
Fortan: 59
C: 43
C++: 33
Python: 25
Php: 21
Javascript: 20
Java: 20
It's still a long time until any of those languages reach 100. But longevity seems to be the rule, not the exception. How many languages that were widespread actually died?[0] I don't pretend to know all the languages that have ever been popular, but not many that subsequently died come to mind. Cobol, maybe some lisp dialects, if you don't count Common Lisp as their successor? Is PL/1 dead? Was APL big enough to make the list?
Probably some of the languages I listed above will die before they're 100. Others might be niche, like Fortran already is. But I wouldn't guarantee it.
[0] Where dead doesn't rule out someone being paid to maintain ancient code. By that standard, it's unclear whether anything will ever die (https://www.snellman.net/blog/archive/2015-09-01-the-most-obsolete-infrastructure-money-could-buy/ https://www.snellman.net/blog/archive/2015-09-01-the-most-ob...)
- rm_-rf_slash 10y agoThe more I think about it, the less I'm sure certain languages like Java will ever die. Java is a really good language for systems of mind-boggling size, and just as it's easy to write, it's also easy to manage and measure people writing it. Java strikes a good balance between extensibility (easy to implement design patterns; cross-platform JVM) and safety (auto garbage collector; no memory access). Even if technology did rapidly change (nanomachines!) there would still be a business case for a Java-style language. Given how used to C syntaxes we are, it might end up looking like Java. Or Java might just be here to stay, for a long, long time. Side note: a lot of "dead" languages nowadays are ones that were written before memory and processing power were abundant so they had a lot of (what we in the glorious future might call) arbitrary character limits. sp(a,b); might have been sufficient back in the slow-old days, but we don't really consider character limits anymore, and so we can actually learn what a given line of code does by reading it. SubmitPostOnHackerNews(commentID,messageText);
- wry_discontent 10y ago> just as it's easy to write, it's also easy to manage and measure people writing it I think you nailed why I don't care for writing Java perfectly.
- macintux 10y agoYou'd be the first person to write Java perfectly! #grammaticalambiguityforthewin
- dfox 10y agoThe problem with Java systems of mind-boggling size is that their mind-boggling size is usually caused by them being written in Java (and not the other way around). As for design patterns, the patterns that are really extensively used have more to do with overcoming the limitations of Java (or C++, C#, or whatever similar language) than with expressing anything profound.
- pjmlp 10y agoExcept people tend to forget those mind-boggling systems used to be written in C, C++ and Smalltalk before Java was a thing. Anyone that hates JEE, should spend some time having fun with CORBA or DCOM and see which one s/he likes best.
- hodgesrm 10y agoCORBA. Oogh. You would bring that up.
- nickpsecurity 10y agoOh it's worse. Not sure why but the high-assurance security field relied on high-security ORB's for connecting components in separation kernel systems. I was like, "Can't we use ZeroMQ or something? What are the odds that could be more fu... insecure than CORBA implementations?" Unreal.
- rectang 10y ago
- jacquesm 10y agoCOBOL is anything but dead (unfortunately).
- hyperpape 10y agoAre there really that many new projects in COBOL, or is it almost all maintenance/extension of existing code? That's where I'd put the cutoff.
- nickpsecurity 10y agoGartner puts it at 5 million lines a year: http://blog.insight.com/2010/10/cobol-still-in-action/ http://blog.insight.com/2010/10/cobol-still-in-action/ They write as much as they can outside COBOL. Those 5 million lines are for extending old programs or integrating new things into them. Some new programs are presumably written as well since... well, it's COBOL programmers writing them. ;)
- jandrese 10y ago5 million lines really isn't that much in the grand scheme of things.
- nickpsecurity 10y agoIt's not a lot. Yet, it's extra code extending critical apps with billions of lines of code and running more transactions than Google does searches. That's a large impact in the grand scheme of things. Also, how much C was being written in UNIX 1.0 days outside of ports of same, exact software? :P
- jdcskillet 10y agoI believe the company I work for is writing just under 500K lines of COBOL code per year... now... how much of that is "new" vs extending vs maintaining is a good question. It is very difficult to measure those things in our environment. If you were to ask the 60 - 75 mainframe programmers we employ, I'm sure they would answer that COBOL is very much alive, and no matter how hard you try to kill it, 40 years of system code is just not going away any time soon (depending on your definition of "dead"). Especially as we hire a good amount of "new to us" people to maintain the system. I think individual companies should define a language as "dead" based on the number of new people needed to maintain the systems. As the number approaches less than 5%(?) of your replacement hires, have you effectively "killed" the language? At the very least it is on life support, and a decision needs to be made about its future. (A grim analogy, I know).
- philwelch 10y agoPascal is a good example of a dead language that used to be fairly popular.
- hyperpape 10y agoGood call.
- nickpsecurity 10y agoMaybe a good call, maybe not. Embarcadero or whatever spelling haha keeps Delphi alive for businesses with old and new code written. Community mostly forked into Free Pascal with lots of libraries, example code, and active compiler development. Component Pascal was a C++ competitor with many companies and people in Europe and Russia using it. Mainly thanks to Blackbox Component Builder which was a Component Pascal app and BSD'd. So, it doesn't seem quite dead.
- pjmlp 10y agoStill pretty alive http://www.mikroe.com/mikropascal/ http://www.mikroe.com/mikropascal/
- themodelplumber 10y agoDid you miss the FP/Lazarus resurgence recently? The forums are active, they made a nice introductory video, it's cross-platform...since I think we're talking "really dead" here, I doubt it qualifies.
- davegauer 10y agoA month ago I would have agreed with you. But then I surprised myself by choosing the Free Pascal Compiler and the Lazarus IDE for some personal projects that need to be native Windows applications. These projects have been in my queue for years because I kept chasing the "best" way to create Windows applications. I learned (and forgot) a lot of crap, but never actually made anything. Now I'm making stuff.
- analognoise 10y agoJoin us: http://www.lazarus-ide.org/ http://www.lazarus-ide.org/ Pascal isn't dead! Native binaries produced (much less garbage overhead), fast compilation, kick-ass open source IDE and standard library, cross platform, free (as in freedom, as well as beer). JOIN US.
- nickpsecurity 10y agoCOBOL is 57 years old, has billions of lines running, and new code is constantly developed. Should be on list. LISP is widespread in education as Scheme, has lasting commercial deployments/companies with LispWorks and Franz Allegro, and new community with Clojure. However, one might treat them as separate languages given LISP 1.0 is very different from Common LISP which isn't Scheme or Clojure. So, it's up for debate but Scheme at 47 years old is probably justifiable due to academics. Racket is practical version with strong community. Chicken Scheme had one last I checked, too. PL/1 (53 years old) is dead outside of legacy systems including mainframes and eComStation (OS/2). Yet, might be worth adding given that it has new code added to extend old systems like COBOL does. New compilers updates happen as well like below. Hard to say it's dead if it's still running companies, getting extended, and getting tooling updates. Just not popular. http://www.iron-spring.com/readme_linux.html http://www.iron-spring.com/readme_linux.html Also, Burrough's MCP is still around under Unisys banner. It was first OS written in high-level, safer language: Burrough's ALGOL (56 years old). Became ESPOL (48yrs old) and NEWP (???). Unisys has a 2015 dated doc on NEWP. I think that means they converted most or all of the OS to it. BASIC (52 yr old) was a language designed for beginners. Since it looked like pseudo-code, it was ridiculously easy to read and write. I got started on VB incidentally. Many spinoffs with wide deployments of commercial BASIC's for business, gaming, and education show it's far from dead. Not to mention 4GL's that were often BASIC-like. Could actually be one of the most widely, built-on languages ever made. https://en.wikipedia.org/wiki/List_of_BASIC_dialects https://en.wikipedia.org/wiki/List_of_BASIC_dialects So, there's more for your list. EDIT to add BASIC in there.
- jhbadger 10y agoFORTRAN isn't the same language either. Much like LISP, it evolved over time. Things like line numbers and GOTO statements that made people hate the language are not really mandatory -- it is basically as structured as C these days.
- nickpsecurity 10y agoIt's been evolving a lot. They're at least honest about that as they put the year after the Fortran type.
- VLM 10y agoBASIC - everyone's abandoned it. PROLOG - such a great idea, never really caught on. Yeah yeah I know minikanren and clojure core.logic but realize its gone from "The Japanese are using it to leap ahead of American AI research so we gotta catch up" in the late 80s to "whats that?" today. To eliminate some battles over the definition of the word dead, how about "without too much effort you can get a paying job writing it". That works pretty well for spoken languages too. That helps with Assembly. As a fraction of the pie its never been lower. As a device driver, embedded, firmware, compiler optimization (does that count?), and boot loader type of technology there's probably never in human history been more lines written per year. So its both dead and thriving by some definitions, but by my definition above its hardly dead.
- kbwt 10y ago> PROLOG - such a great idea I don't really get the appeal of basing a whole language on a backtracking algorithm. It always seemed to me that constraint solvers are better suited to a library implementation.
- themodelplumber 10y agoThere are a lot of people still writing BASIC code. PureBasic, QB64, FreeBASIC, etc. Check out how active those communities are. Has everyone _really_ abandoned it? The bar for dead is just that: Dead.
- VLM 10y agoI'll throw two domain specific language (families) into the mix, that are psuedo-dead although not really dead. Although amstex and latex are healthy (and latex is about 40 years old) I would argue that very few indeed are writing in raw bare macro-free package-free tex, just bare totally raw tex. I'm sure it happens... rarely. Another psuedo-dead is postscript. In the 80s there was a famous EE pushing the idea of sending your code and data to your postscript laserprinter as a batch frontend sorta and let the laserprinter interpret the postscript and do the calculations for your smith chart, not merely print your bitmap containing a smith chart or whatever. That idea of postscript as a general purpose application language, although infinitely cool, never went much of anywhere.
- simonbyrne 10y agoAnd of course, there is PSTricks, which combines them both, letting you solve ODEs in your document: https://www.ctan.org/tex-archive/graphics/pstricks/contrib/pst-ode?lang=en https://www.ctan.org/tex-archive/graphics/pstricks/contrib/p...
- SeanDav 10y agoI am about to start a new project with a company where COBOL is still very much a force. COBOL is far from dead and there are very serious applications using COBOL in mainstream use.
- kazinator 10y ago> maybe some lisp dialects, if you don't count Common Lisp as their successor? In that case Dennis Ritchie's K&R C is dead, if you don't count C11 as its successor. If/when Python 2.7 dies out, Python's age can then be measured back to Python 3. Etc.
- Razengan 10y ago> The idea is that we need to start working towards the languages we'll use in 100 years. IF we'll still be programming in 100 years, let alone using languages, instead of just telling an A.I. what to make. :) We already don't use a lot of tech that we used to, because automated tools do it for us now. Assembly language is a relevant example right there.
- nemo44x 10y agoOr an A.I. telling us what to make.
- noobermin 10y agoCalling Fortran 59 years old is odd, as not many people write in the original form of fortran. C11 is much closer to K&R C than Fortran 08 is to the original Fortran.
- pessimizer 10y agoYou left out Erlang, which has just turned 30.
- hyperpape 10y agoI also left out Perl, which may be losing mindshare, but is definitely not dead, Ruby, C#, and so on. I chose these languages because they occurred to me as being relatively old and relatively common, but I won't argue that there aren't any other languages that could be on the list.
- vram22 10y ago>but not many that subsequently died come to mind. Cobol, I've read (not heard) it said that there may be more lines of COBOL in existence (probably meaning still running) than lines of any other language. Biz, insurance, gov't, IBM, etc. ... FORTRAN and C are probably close seconds (relatively speaking).
- Gibbon1 10y agoA friend of mine mentioned that they hired a COBOl guy last month. They needed someone to work on the COBOL side of things because they are doing a big rewrite. (The legacy COBOL code outlived the stuff that was supposed to eventually replace it)