Author: wayland
Date: 2009-02-25 07:08:52 +0100 (Wed, 25 Feb 2009)
New Revision: 25541

Modified:
   docs/Perl6/Spec/S28-special-names.pod
Log:
S28: Incorporated some more stuff from the old documentation lower down, and a 
few 
variables from S02.  


Modified: docs/Perl6/Spec/S28-special-names.pod
===================================================================
--- docs/Perl6/Spec/S28-special-names.pod       2009-02-25 05:31:24 UTC (rev 
25540)
+++ docs/Perl6/Spec/S28-special-names.pod       2009-02-25 06:08:52 UTC (rev 
25541)
@@ -50,6 +50,7 @@
  $?CLASS                   # current class (as variable)
  %?CONFIG                  # configuration hash
  $=DATA                    # data block handle (=begin DATA ... =end)
+ $?DISTRO            S02   # Which OS distribution am I compiling under
  $*EGID                    # effective group id
  %*ENV                     # system environment
  $*ERR               S16   # Standard error handle; is an IO object
@@ -71,16 +72,20 @@
  $?OSVER                   # operating system version compiled for
  $*OSVER                   # operating system version running under
  $*OUT               S16   # Standard output handle; is an IO object
+ $?PARSER            S02   # Which Perl grammar was used to parse this 
statement?
  $?PACKAGE                 # current package (as object)
  $?PACKAGENAME       S10   # name of current package
- $?PERLVER                 # perl version compiled for
- $*PERLVER                 # perl version running under
+ $?PERL              S02   # Which Perl am I compiled for?
+ $*PERL                    # perl version running under
  $*PROGRAM_NAME            # name of the program being executed
  $*PID                     # system process id
  ::?ROLE                   # current role (as package name)
  $?ROLE                    # current role (as variable)
  &?ROUTINE           S06   # current sub or method (itself)
+ $?SCOPE             S02   # Current "my" scope
  $*UID                     # system user id
+ $?VM                S02   # Which virtual machine am I compiling under
+ $?XVM               S02   # Which virtual machine am I cross-compiling for
 
 Note that contextual variables such as C<$*OUT> may have more than
 one current definition in the outer dynamic context, in which case
@@ -166,10 +171,11 @@
  $^H                 -              These were only ever internal anyway
  %^H                 -
  -                   $!             Current exception (see L<S04-control>)
- $! $ERRNO $OS_ERROR -              Can get some info from new $!
- $?  $CHILD_ERROR    -
- $@  $EVAL_ERROR     -              Just throws an exception now (see 
L<S04-control>)
- $^E                 -
+ $! $ERRNO $OS_ERROR -              Use shiny new $!
+ $?  $CHILD_ERROR    -              Use shiny new $!
+ $@  $EVAL_ERROR     -              Use shiny new $!
+ $^E                 -              Use shiny new $!
+ $^S                 -
  $. $NR              $*IN.input_record_number()
  $/ $RS              $*IN.input_record_separator()
  $|                  $*OUT.autoflush()
@@ -203,14 +209,22 @@
  ARGVOUT             $*ARGVOUT      Another IO object
  @F                  @*INPLACE_AUTOSPLIT_FIELDS   ..or some such
  %ENV                %*ENV
+ ${^OPEN}            -              This was internal; forget it
 
 =head2 Old stuff for p5/p6 comparison
 
 This section will eventually die, but for now, it contains some old 
information on which 
-Perl5 special variables will turn into Perl6 special variables.  
+Perl5 special variables will turn into Perl6 special variables.  The reason 
they are 
+retained is either:
 
-=over 4
+=over
 
+=item * Their status is undecided
+
+=item * They have some commentary on stuff that needs consideration
+
+=back
+
 Because a blank entry in either column could be taken to mean either 
 "not in Perl 6" or "unknown", the information as presented 
 below presumes an entry in both columns for every entry. 
@@ -229,29 +243,25 @@
 Other organizational
 schemes may become appropriate when the table is more complete.
 
-=back
-
  ******* XXX the columns seem to have switched! *********
 
  ?       ${^ENCODING}
+ ?       ${^UNICODE}     Pending S15 Unicode
 
-
  -       $^V $PERL_VERSION
  -       $]             version + patchlevel / 1000 of Perl interpreter
                         Replacement for the above two is unclear.
+                        Is this $?PERL?  
 
 
- -       ${^OPEN}
+ ?       ${^TAINT}      Pending, among other things, infectious trait spec
 
- ?       ${^TAINT}
- ?       ${^UNICODE}
-
  -       $^W $WARNING   Probably gone. But we need a reasonably
                         granular way to suppress specific (groups
                         of) warnings within both lexical and 
                         dynamic scopes.
 
- ?       $ARGV
+ ?       $ARGV       Can this be handled with $*IN.name, etc?  
  
  ?       @INC        Uncertain but we need a way to add to search path
  ?       %INC        Uncertain but we need a way to add to search path
@@ -259,13 +269,14 @@
  ?       @_
 
 
+This signal handling stuff is pending S16.  
+
  %*SIG   %SIG        Or possibly &*ON_SIGINT, etc. But then we'd need 
                      to add some signal introspection in another way.
 
  &*ON_WARN __WARN__
  &*ON_DIE  __DIE__
  &*ON_PARSEERROR
- -       $^S $EXCEPTIONS_BEING_CAUGHT
 
 
 XXX Everything below this line is older than everything above it.  

Reply via email to