Re: r25102 - docs/Perl6/Spec

2009-02-01 Thread Brandon S. Allbery KF8NH

On 2009 Jan 30, at 11:30, Larry Wall wrote:

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...



setting, frame, stage, neighborhood, gestalt?

--
brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allb...@kf8nh.com
system administrator [openafs,heimdal,too many hats] allb...@ece.cmu.edu
electrical and computer engineering, carnegie mellon universityKF8NH




PGP.sig
Description: This is a digitally signed message part


r25156 - docs/Perl6/Spec

2009-02-01 Thread pugs-commits
Author: lwall
Date: 2009-02-01 17:25:33 +0100 (Sun, 01 Feb 2009)
New Revision: 25156

Modified:
   docs/Perl6/Spec/S02-bits.pod
   docs/Perl6/Spec/S19-commandline.pod
Log:
move away from prelude towards setting
establish LANG lexical scope to indicate setting
define --language or -L to set LANG dsl


Modified: docs/Perl6/Spec/S02-bits.pod
===
--- docs/Perl6/Spec/S02-bits.pod2009-02-01 15:17:26 UTC (rev 25155)
+++ docs/Perl6/Spec/S02-bits.pod2009-02-01 16:25:33 UTC (rev 25156)
@@ -1763,7 +1763,8 @@
 MY  # Lexical symbols declared in the current scope
 OUR # Package symbols declared in the current package
 FILE# Lexical symbols in this file's outermost scope
-PERL# Lexical symbols in the standard perlude
+PERL# Lexical symbols in the standard setting
+LANG# Lexical symbols in current dsl (usually PERL)
 GLOBAL  # Interpreter-wide package symbols
 PROCESS # Process-related globals (superglobals)
 SUPER   # Package symbols declared in inherited classes
@@ -1779,10 +1780,15 @@
 Other all-caps names are semi-reserved.  We may add more of them in
 the future, so you can protect yourself from future collisions by using
 mixed case on your top-level packages.  (We promise not to break
-any existing top-level CPAN package, of course.  Except maybe ACME,
+any existing top-level CPAN package, of course.  Except maybe CACME,
 and then only for coyotes.)
 
-Note that FILE::OUTER is usually, but not always, PERL.
+The CLANG scope is equivalent to CFILE::OUTER.  For a standard Perl
+program CLANG is the same as CPERL, but various startup options
+(such as C-n or C-p) can put you into a domain specific language,
+in which case CPERL remains the scope of the standard language,
+while CLANG represents the scope defining the DSL that functions
+as the setting of the current file.
 
 =item *
 

Modified: docs/Perl6/Spec/S19-commandline.pod
===
--- docs/Perl6/Spec/S19-commandline.pod 2009-02-01 15:17:26 UTC (rev 25155)
+++ docs/Perl6/Spec/S19-commandline.pod 2009-02-01 16:25:33 UTC (rev 25156)
@@ -14,8 +14,8 @@
 
   Maintainer: Jerry Gay jerry@rakudoconsulting.com
   Date: 12 Dec 2008
-  Last Modified: 9 Jan 2009
-  Version: 15
+  Last Modified: 1 Feb 2009
+  Version: 16
 
 This is a draft document. This document describes the command line interface.
 It has changed extensively from previous versions of Perl in order to increase
@@ -324,10 +324,10 @@
 These options are made available in context variables matching their name,
 and are invisible to CMAIN() except as C %+OPTSname .  For example:
 
-  ++PARSER --prelude=Perl6-autoloop-no-print ++/PARSER
+  ++PARSER --setting=Perl6-autoloop-no-print ++/PARSER
 
 is available inside your script as C %+OPTSPARSER , and contains
-C--prelude=Perl6-autoloop-no-print.  Since eager matching is used, if you
+C--setting=Perl6-autoloop-no-print.  Since eager matching is used, if you
 need to pass something like:
 
   ++foo -bar ++foo baz ++/foo ++/foo
@@ -478,7 +478,7 @@
 =item --autoloop-no-print, -n
 
 Act like awk.  Desugars to
-C++PARSER --prelude=Perl6-autoloop-no-print ++/PARSER.
+C++PARSER --setting=Perl6-autoloop-no-print ++/PARSER.
 
 =item --output-format, -O *format*
 
@@ -497,8 +497,15 @@
 =item --autoloop-print, -p
 
 Act like sed.  Desugars to
-C++PARSER --prelude=Perl6-autoloop-print ++/PARSER.
+C++PARSER --setting=Perl6-autoloop-print ++/PARSER.
 
+=item --language, -L *dsl*
+
+Set the domain specific language for parsing the script file.  (That is,
+specify the Isetting (often known as the prelude) for the program.)
+C++PARSER --setting=*dsl* ++/PARSER.
+
+
 =item --search-path, -S
 
 Use PATH environment variable to search for script specified on command-line.
@@ -608,6 +615,6 @@
 Sandboxing? maybe-r
 
 Env var? maybe -E.
-Could be posed in terms of substituting a different prelude.
+Could be posed in terms of substituting a different setting.
 
 =for vim:set expandtab sw=4:



r25157 - docs/Perl6/Spec

2009-02-01 Thread pugs-commits
Author: lwall
Date: 2009-02-01 17:31:51 +0100 (Sun, 01 Feb 2009)
New Revision: 25157

Modified:
   docs/Perl6/Spec/S02-bits.pod
Log:
ref -L in S19


Modified: docs/Perl6/Spec/S02-bits.pod
===
--- docs/Perl6/Spec/S02-bits.pod2009-02-01 16:25:33 UTC (rev 25156)
+++ docs/Perl6/Spec/S02-bits.pod2009-02-01 16:31:51 UTC (rev 25157)
@@ -12,9 +12,9 @@
 
   Maintainer: Larry Wall la...@wall.org
   Date: 10 Aug 2004
-  Last Modified: 28 Jan 2009
+  Last Modified: 1 Feb 2009
   Number: 2
-  Version: 150
+  Version: 151
 
 This document summarizes Apocalypse 2, which covers small-scale
 lexical items and typological issues.  (These Synopses also contain
@@ -1764,7 +1764,7 @@
 OUR # Package symbols declared in the current package
 FILE# Lexical symbols in this file's outermost scope
 PERL# Lexical symbols in the standard setting
-LANG# Lexical symbols in current dsl (usually PERL)
+LANG# Lexical symbols in current DSL (usually PERL)
 GLOBAL  # Interpreter-wide package symbols
 PROCESS # Process-related globals (superglobals)
 SUPER   # Package symbols declared in inherited classes
@@ -1788,7 +1788,8 @@
 (such as C-n or C-p) can put you into a domain specific language,
 in which case CPERL remains the scope of the standard language,
 while CLANG represents the scope defining the DSL that functions
-as the setting of the current file.
+as the setting of the current file.  See also the C-L/C--language
+switch described in LS19-commandline.
 
 =item *