On Fri, Jan 30, 2009 at 10:49:13AM +0100, Carl Mäsak wrote: : Mark (>), Moritz (>>), Larry via commit bot (>>>): : >>> + PERL # Lexical symbols in the standard "perlude" : >> : >> Did you mean "prelude" instead? : > : > I took the quotation marks to indicate an intentional : > misspelling/coinage: "perl" + "prelude" = "perlude". : : At which point one might ask oneself whether it is more important that : the synopses be amusing and punny, or that they clearly specify what : is expected of a conforming Perl 6 implementation. : : Now, just so you don't think I'm all cranky and humour-impaired: I got : the pun, I smiled a bit at it -- but I already know what a "standard : prelude" is. Those who don't are going to be confused in two ways when : they read the above, making the explanatory comment essentially : useless.
You must understand that part of the reason I wrote that is to remind folks that we're *not* talking about a standard prelude here. The prelude metaphor says that it's something that comes before your program, but that's not what we want. We want something that comes outside your program, that is, a lexical scope that *surrounds* the file scope. We don't have a good word for that: circumlude? ambilude? So that's why I said "perlude". Well, that, and it was a pun. :) The concept here is that any lexical scope can parse a token that says "snapshot me here at this depth", and then there's a mechanism for inserting the new main program in that lexical scope at startup. It not only gives us the standard outerlude, but allows us to start up the parser in any language we care to specify by snapshot name. Special cases might even have their own switches, which is why S19 talks about implementing -n and -p by substituting a different prelude. But then it's not just a prelude, because it's supplying an implicit loop around the main code as part of the definition of the language you're using. So I'm open to suggestions for what we ought to call that envelope if we don't call it the prelude or the perlude. Locale is bad, environs is bad, context is bad...the wrapper? But we have dynamic wrappers already, so that's bad. Maybe the setting, like a jewel? That has a nice static feeling about it at least, as well as a feeling of surrounding. Or we could go with a more linguistic contextual metaphor. Argot, lingo, whatever... So anyway, just because other languages call it a prelude doesn't mean that we have to. Perl is the tail that's always trying to wag the dog... What is the sound of one tail wagging? Larry