summaryrefslogtreecommitdiff
path: root/Grammar
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>1992-01-14 18:27:17 +0000
committerGuido van Rossum <guido@python.org>1992-01-14 18:27:17 +0000
commit5a570b86f9baee1d4685bd772c765759d21b0bdf (patch)
tree648effd5d523e6b3bd138ab435c01d2ad6090bd8 /Grammar
parent56ac7b3dec75cc7ebb3b3b04c07e1a0aa48748f9 (diff)
downloadcpython-5a570b86f9baee1d4685bd772c765759d21b0bdf.tar.gz
Added varargs syntax "def f(a, b, +c): ..."
Diffstat (limited to 'Grammar')
-rw-r--r--Grammar/Grammar16
1 files changed, 11 insertions, 5 deletions
diff --git a/Grammar/Grammar b/Grammar/Grammar
index e61a874d9b..3462edd7c2 100644
--- a/Grammar/Grammar
+++ b/Grammar/Grammar
@@ -1,7 +1,12 @@
-# Grammar for Python, version 10
+# Grammar for Python
-# Changes since version 9:
-# Equality is now only tested with '=='
+# Change log:
+
+# 11-Jan-92:
+# Variable length argument list syntax added: def f(a, b, +rest): ...
+
+# 8-Jan-92:
+# Allow only '==' for equality testing
# Changes since version 8:
# Trailing commas in formal parameter lists are allowed
@@ -56,9 +61,10 @@ expr_input: testlist NEWLINE
eval_input: testlist ENDMARKER
funcdef: 'def' NAME parameters ':' suite
-parameters: '(' [fplist] ')'
-fplist: fpdef (',' fpdef)* [',']
+parameters: '(' [varargslist] ')'
+varargslist: (fpdef ',')* '+' NAME | fpdef (',' fpdef)* [',']
fpdef: NAME | '(' fplist ')'
+fplist: fpdef (',' fpdef)* [',']
stmt: simple_stmt | compound_stmt
simple_stmt: small_stmt (';' small_stmt)* [';'] NEWLINE