Does it matter if Perl has a formal spec? Many languages don't (eg Ruby). Many that do now, did not at one point (eg C++). A few had formal specifications from day 1, but they tend to be "written by committee" and hence not nearly as much fun (eg Ada, Java).

Tell your friend this. A programming language is a language you can write computer programs in. Perl is by that measure very definitely a programming language.

If you want to upset him a bit, you can tell him that if he thinks that Perl can't be algebraically defined then he clearly doesn't think very well. Perl has an implementation in C, and if you wanted to turn that C implementation into a formal description of exactly how the perl interpreter works, you could. The description might be rather verbose, but any particular version of Perl has a perfectly precise definition.

Now let's be more serious. There is a good chance that Perl 6 will wind up with a formal spec. There are reasons to want one. The following discussion gives several of them. Going the other way, when people write specs too early they get stuck with their first bad ideas. I think that Perl has benefited from Larry Wall being able to rethink at least some of his...


In reply to Re (tilly) 1: Perl IS a programming language, right? by tilly
in thread Perl IS a programming language, right? by DaWolf

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • 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:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.