Author: audreyt
Date: Mon Mar  5 08:27:24 2007
New Revision: 14310

Modified:
   doc/trunk/design/syn/S12.pod

Log:
* S12: Clarify that VAR(1) and VAR(@foo) are simply no-ops;
       i.e., it applies to thiings other than Scalars, too.
       Also fixed the postfix macro name and nomenclature
       around .VAR.

Modified: doc/trunk/design/syn/S12.pod
==============================================================================
--- doc/trunk/design/syn/S12.pod        (original)
+++ doc/trunk/design/syn/S12.pod        Mon Mar  5 08:27:24 2007
@@ -12,9 +12,9 @@
 
   Maintainer: Larry Wall <[EMAIL PROTECTED]>
   Date: 27 Oct 2004
-  Last Modified: 20 Feb 2007
+  Last Modified: 6 Mar 2007
   Number: 12
-  Version: 42
+  Version: 43
 
 =head1 Overview
 
@@ -332,18 +332,23 @@
     @keys  = %hash.keys;
     $sig   = &sub.signature;
 
-Use the C<VAR> pseudo-function on a scalar variable to get at its
+Use the prefix C<VAR> macro on a scalar variable to get at its
 underlying C<Scalar> object:
 
     if VAR($scalar).readonly {...}
 
-There's also a corresponding postfix:<VAR> macro that can be used
+C<VAR> is a no-op on a non-scalar variables and values:
+
+    VAR(1);     # 1
+    VAR(@x);    # @x
+
+There's also a corresponding C<< postfix:<.VAR> >> macro that can be used
 as if it were a method:
 
     if $scalar.VAR.readonly {...}
 
 (But since it's a macro, C<VAR> is not dispatched as a real method.
-To dispatch to a real C<.VAR> method use the indirect C<$obj."VAR">
+To dispatch to a real C<.VAR> method, use the indirect C<$obj."VAR">
 form.)
 
 You can also get at the container through the appropriate symbol table:

Reply via email to