The idea of what is a major version and what is a minor version has changed over time. A major version for most software products has always been necessary for revolutionary developments in the language. Minor versions used generally to be invisible to the public until the 1980s. To take a couple of examples from history ... Fortran 77 converted Fortran IV from a fixed format punched card dinosaur into a free format new one with all the block structured bells and whistles of Algol and later Pascal. A particularly interesting thing happened to Sybase version numbering. It went from 4.9 to 10 and then 11, because the minor versions were becoming major and the minor-minor needed to be upgraded to just "minor". 10 was a rewrite of the engine whereas 11 introduced revolutionary new language features such as declarative referential integrity.
Backward compatibility may be commonly found for compiled languages (C programs compile under C++ and Fortran IV under Fortran 77) but this tends no longer to be true for some major SQL versions. But to say that you need 100% backward compatibility or a new language name. I don't see any precendent for that. On the contrary, the most famous interpreted language of all, BASIC, makes Perl 6 look like a Paragon of compatibility.
The original Dartmouth BASIC programs wouldn't scan (parse) under any of the minicomputer implementations of the 70's and 80's. In particular, by the time all the PDP-11 BASIC+ BASIC+2 and BASIC-11 (which required $ on the end of strings and % on the end of integers) were assimilated into the Borg (a.k.a VAX BASIC), where variables could be declared and, like Fortran 77, lots of block structured gadgets appeared, you had something a Dartmouth BASIC programmer wouldn't even recognise from one word to the next. (Update: and I might as well ignore VB as not really trying to be a compatible derivative of BASIC!)
Update: note that I couldn't find a really analogous unix interpreted language - hence all the VAX references, but unix didn't have a "killer" interpreter like VAX BASIC - that is until Perl came along!
On that basis and in conclusion, I feel that Perl 6 doesn't really set any new precedents by not offering 100% upward-compatibility and that BASIC sets the precedent the other way!
__________________________________________________________________________________
^M Free your mind!
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.