> On Oct 30, 2015, at 12:39 PM, Sean Caron <[email protected]> wrote:
>
> ...
> What concerns me is the amount of code these days that is being written in
> languages that has no formal standard at all. Perl, Python, PHP, Ruby, the
> list goes on ... I wonder how much of it will still be useful in ten or
> fifteen years.
Good question. Then again, only a few languages I can think of had a formal
standard from the start: Algol 68 and Algol 68, plus probably Ada (don't know
that one well enough to be definite about it).
All the others were either never standardized, or standardized long after the
fact. The ones you list are examples of the former, as are many others (PL/I
for example?); examples of the latter include Fortran, C, APL, COBOL, Pascal,
and presumably many others as well.
Also, being useable 10-15 years from now requires the availability of
compatible implementations, or enough information to allow them to be created.
Standardization is only very loosely connected to that. For one thing,
standards generally change what existed before (indeed, this is often a
deliberate part of the process). ANSI C is not compatible with K&R C, though
converting one to the other isn't terribly hard, and supporting both isn't
either. Similarly, ANSI Fortran isn't FORTRAN II. Nor is Python 3 the same as
Python 1.5. But all of these are manageable conversion problems.
For that matter, there's translation. You don't need a standard for the
implementation language of some algorithm; it suffices (at the cost of some
labor) to have an understanding of whatever language it was written in, and the
knowledge to translate that to a currently available language.
paul