Chuck Guzis wrote:
Here's an interesting problem.
Suppose you wanted to write an application for a manufacturing process that
will, in all probability, run for the next 30 years. No direct control of
the process itself is entailed (i.e., you don't need the program to
operation valves or run motors), but you do need this program to compute
manufacturing parameters for each customer. I/O requirements are very
modest, mostly simple keyboard and display.
What would you write it in? Clearly, you'd want to be independent of a
particular software vendor, so the likes of Visual BASIC isn't an option.
You'd also want to write in a language that isn't nearing obsolesence, nor
one that's still evolving. "Niche" languages would be out of the question,
as longevity could be a problem.
So what would it be? My vote is for FORTRAN.
Are there any schools teaching FORTRAN and more? Does it
have an active community? If not, you are going to have problems
finding good FORTRAN programmers in 30 years. I don't know,
but lately I haven't seen many people who know anything about
FORTRAN except that it was an early programming language.
Also, which version of FORTRAN (IV, 90, Watfor, ...) do you
want to develop around.
I'd avoid any kind of BASIC (too many variants), and Pascal (same
reason, but to somewhat less extent).
I'd avoid the gee-whizz languages and languages designed around
GUI's (too rapidly changing for long term stability) like Java,
C#, perl, python, etc...
Shell scripts are too OS specific (csh, bash, etc.) There are some that
have come cross-platform, but usually for a very small number of
platforms. And they frequently do surprising things with bad
user entry.
Pick a language that has a standards document so that different
versions of the compiler have a chance of running your program
(Ada, C, C++, etc.), and stick to the standards and not someones
extensions.
It's good if there are is a large number of people currently
active in using the language, as many of them should still be
alive in 30 years.
... Is this for a machine like the one in "Lost"?