Skip to content
Browse files

change _NAME vars to IO::Path objects

$*PROGRAM_NAME    -> $*PROGRAM
$*EXECUTABLE_NAME -> $?COMPILER or $*SHEBANG
  • Loading branch information...
1 parent beef8e6 commit 6cdd9f3543d74a80678854a55fe7ff3c06f14ac7 @TimToady TimToady committed Nov 27, 2013
Showing with 12 additions and 11 deletions.
  1. +5 −5 S19-commandline.pod
  2. +7 −6 S28-special-names.pod
View
10 S19-commandline.pod
@@ -14,8 +14,8 @@ DRAFT: Synopsis 19: Command Line Interface
Created: 12 Dec 2008
- Last Modified: 26 Oct 2009
- Version: 26
+ Last Modified: 27 Nov 2009
+ Version: 27
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
@@ -67,9 +67,9 @@ containing whitespace must be quoted. The I<program> processes the arguments
and performs the requested actions. It looks something like F</usr/bin/perl6>,
F<parrot perl6.pbc>, or F<rakudo> (or F<mono niecza.exe>, et cetera),
and is followed by zero or more I<arguments>.
-Perl 6 does not do any processing of the I<program> portion of the command
-line, but it is made available at run-time via the C<< PROCESS::<$PROGRAM_NAME> >>
-variable.
+The I<program> portion of the command
+line is made available at run-time via the C<< PROCESS::<$PROGRAM> >>
+variable (normally accessed as C<$*PROGRAM>) as an C<IO::Path>.
Command line I<arguments> are broken down into I<options> and I<values>.
Each option may take zero or more values. After all options have been
View
13 S28-special-names.pod
@@ -14,8 +14,8 @@
Created: 23 Feb 2009, created by Tim Nelson from miscellaneous documents lying around
- Last Modified: 11 Jun 2013
- Version: 11
+ Last Modified: 27 Nov 2013
+ Version: 12
=head1 Special Variables
@@ -89,7 +89,8 @@ be fleshed out in S26.
%*ENV S02 Hash of Str # system environment variables
$*ERR S16 IO::Handle # Standard error handle
$*EUID Int # effective user id
- $*EXECUTABLE_NAME Str # executable name
+ $?COMPILER IO::Path # location of the compiler executable
+ $*SHEBANG IO::Path # location of the interpreter executable (usually eqv $?COMPILER)
$?FILE S02 Str # current filename of source file
$?GRAMMAR S02 Grammar # current grammar
$*GID Int # group id
@@ -110,7 +111,7 @@ be fleshed out in S26.
$*PERL S02 Application # perl version running under
$*PID Int # system process id
%=pod S02 # (or some such)
- $*PROGRAM_NAME S19 Str # name of the Perl program being executed
+ $*PROGRAM S19 IO::Path # location of the Perl program being executed
%*PROTOCOLS S16 Hash of Method # Stores the methods needed for the uri() function
::?ROLE Str # current role (as package or type name)
$?ROLE S02 Role # current role
@@ -188,7 +189,7 @@ If a column has a "-" in it, it means that item is unavailable in that version o
$( $GID $*GID Real GID (Group ID)
$> $EUID $*EUID Effective UID
$) $EGID $*EGID Effective GID
- $0 $PROGRAM_NAME $*PROGRAM_NAME
+ $0 $PROGRAM_NAME $*PROGRAM (plus stringification)
$^C $COMPILING $*COMPILING
$^D $DEBUGGING $*DEBUGGING
$^F $SYS_FD_MAX $*SYS_FD_MAX ...or some such
@@ -201,7 +202,7 @@ If a column has a "-" in it, it means that item is unavailable in that version o
$^V $] $?PERL.version
$^W $*WARNINGS (if any dynamic control needed)
${^WARNING_BITS} $?WARNINGS
- $^X $*EXECUTABLE_NAME ...or some such
+ $^X $?COMPILER or $*SHEBANG (plus stringification)
ARGV $*ARGFILES Note the P6 idiom for this handle:
for lines() {
# each time through loop

0 comments on commit 6cdd9f3

Please sign in to comment.
Something went wrong with that request. Please try again.