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.