News for hackers. Stuff that matters.
Re:Language choices for long-term projects by informatimago on Wednesday December 31, 2014 @07:04AM (#8819044)
This is an ill-informed opinion.

He correctly reject quite a number of language, but probably not for the right reason, given the criteria of using it for long-term projects.

What languages will be still usable in 50 years? A language like perl, that was popular a few years ago, but that nobody use anymore? A language like java or C++ that's changing every few years (because it's so limited or ill-designed)? What guarantee do we have to be able to compile our current C++ programs with C++2060? What would you bet? Even C's evolving.

On the other hand, there are a small number of candidate language that withstand the test of time:

- Fortran and Cobol (somewhat specialized languages),

- Lisp, notably Common Lisp which is still able to run programs 55 years old (that's my personnal bet, CL programs written today will be still runnable in the Lisp of 2060), and whose ANSI standard has not changed for 20 years now.

- probably Smalltalk. Perhaps Ada and Eiffel.

All the other languages are too recent or evolving too fast to ensure any perenity for long term projects, AFAICS.

For example, while Haskell is the current fad in purely functional programming languages, I could count at least half a dozen of rather popular functional languages invented since I was in University, for an average of lifespan of a few years each, not much more. If I wanted to write a long term project in a functional style, I'd still choose Common Lisp to do that...

http://longnow.org/

Re:Language choices for long-term projects by ekidd on Wednesday December 31, 2014 @07:36AM (#8819109)
- Fortran and Cobol

This is definitely the right general strategy: You want to ensure that compilers, libraries and a community are all available in 50 years. This depends, in turn, on having a huge community of users with high-value legacy systems that can't be feasibly rewritten.

So basically, you want to choose a boring, widely-adopted "enterprise" language, one used to implement a large number of critical back-office applications in Fortune 500 companies. You also want to choose a language which has a long history of backwards compatibility. In the 80s, Cobol would have been an excellent choice.

Today, I'd probably go with Java for this role. Sure, there's a lot of boilerplate (or whatever your personal complaint might be). But in 2064, there will absolutely be a huge quantity of ugly legacy code written in Java, and it will still be running critical systems somewhere. At a minimum, there will be a small market of specialists who can maintain it, and Oracle (or one of their successors) will be happy to sell you a JVM and enterprise consulting services at a hideous markup.

Re:Language choices for long-term projects by riffraff on Wednesday December 31, 2014 @07:50AM (#8819134)
not to be underestimated: the jdk is open source.
Re:Language choices for long-term projects by cafard on Wednesday December 31, 2014 @09:01AM (#8819352)
"A language like perl, that was popular a few years ago, but that nobody use anymore?"

Nobody uses anymore, or that no longer gets a lot of buzz?

Also, Lisp has as you say been around for a long time, but Common Lisp goes back only so far. Will it really run the Lisp programs of 1960?

Re:Language choices for long-term projects by tome on Wednesday December 31, 2014 @07:45AM (#8819126)
Haskell has existed for 25 years, Common Lisp for 30 and Lisp in general for a bit over 50. Yes, Lisp has the longer pedigree, but I don't think you can call Haskell a fad.
Re:Language choices for long-term projects by Pyfagorass on Wednesday December 31, 2014 @07:24AM (#8819081)
> This is an ill-informed opinion.

Like it's opinionated, poorly researched, and really just the thoughts from his head?

Re:Language choices for long-term projects by k__ on Wednesday December 31, 2014 @07:55AM (#8819153)
I sens a severe case of the blubb-paradox, when reading the list ;)
Re:Language choices for long-term projects by marcosdumay on Wednesday December 31, 2014 @08:08AM (#8819185)
What in Javascript does not fit that description? It has even more inertia than Fortran and Lisp, it has more badly written software running than Java and C++.

Misguided as the article is, I think it still reached the correct conclusion.

Re:Language choices for long-term projects by humanrebar on Wednesday December 31, 2014 @08:11AM (#8819192)
Same for C++. There will be a -std=c++03 flag in gcc for a long, long time to come.