Author: kjs
Date: Mon Oct  1 11:43:44 2007
New Revision: 21724

Modified:
   trunk/languages/PIR/docs/pirgrammar.pod

Log:
languages/PIR:
* update pirgrammar.pod, to reflect grammar changes, and remove whitespace.

Modified: trunk/languages/PIR/docs/pirgrammar.pod
==============================================================================
--- trunk/languages/PIR/docs/pirgrammar.pod     (original)
+++ trunk/languages/PIR/docs/pirgrammar.pod     Mon Oct  1 11:43:44 2007
@@ -48,7 +48,7 @@
   .HLL_map        .param             .sub
   .HLL            .pcc_begin_return  .yield
   .include        .pcc_begin_yield
-                  
+
 
 
 =head2 Registers
@@ -290,7 +290,7 @@
 
 =back
 
-The sub flags are listed after the sub name. The subroutine name can also be 
+The sub flags are listed after the sub name. The subroutine name can also be
 a string instead of a bareword, as is shown in this example:
 
   .sub 'foo' :load :init :anon
@@ -606,7 +606,7 @@
       target "=" short_sub_call
     | target "=" target keylist
     | target "=" expression
-    | target "=" "new" [ int_constant | string_constant]
+    | target "=" "new" string_constant
     | target "=" "new" keylist
     | target "=" "find_type" [ string_constant | string_reg | id ]
     | target "=" heredoc
@@ -633,7 +633,7 @@
     | simple_expr ".." simple_expr
 
   result_var_list:
-    "(" result_vars ")"
+    "(" result_vars? ")"
 
   result_vars:
     result_var [ "," result_var ]*
@@ -725,17 +725,17 @@
   long_sub_call:
     ".pcc_begin" nl
     arguments
-    [ method_call | non_method_call] target nl
+    [ method_call | non_method_call] nl
     [ local_decl nl ]*
     result_values
     ".pcc_end"
 
   non_method_call:
-    ".pcc_call" | ".nci_call"
+    [ ".pcc_call" | ".nci_call" ] target
 
   method_call:
     ".invocant" target nl
-    ".meth_call"
+    ".meth_call" [ target | string_constant ]
 
   parenthesized_args:
     "(" args ")"
@@ -1177,15 +1177,15 @@
 NOTE: currently, the line directive is implemented in IMCC as #line.
 See the PROPOSALS document for more information on this.
 
-  
+
   .namespace ['Foo'] # namespace Foo
-  
+
   .namespace ['Object';'Foo'] # nested namespace
 
   .namespace # no [ id ] means the root namespace is activated
 
-The first line opens the namespace 'Foo'. When doing Object Oriented 
programming, 
-this would indicate that sub or method definitions belong to the class 'Foo'. 
+The first line opens the namespace 'Foo'. When doing Object Oriented 
programming,
+this would indicate that sub or method definitions belong to the class 'Foo'.
 Of course, you can also define namespaces without doing OO-programming.
 
 Please note that this C<.namespace> directive is I<different> from the
@@ -1277,10 +1277,6 @@
 
 =item *
 
-Clean up grammar, remove never-used features.
-
-=item *
-
 Test. A lot.
 
 Bugs or improvements may be sent to the author, and are of course greatly

Reply via email to