[Python-checkins] r67080 - peps/trunk/pep-0306.txt

benjamin.peterson python-checkins at python.org
Mon Nov 3 16:28:02 CET 2008


Author: benjamin.peterson
Date: Mon Nov 3 16:28:02 2008
New Revision: 67080
Log:
a few updates and clarifications
Modified:
 peps/trunk/pep-0306.txt
Modified: peps/trunk/pep-0306.txt
==============================================================================
--- peps/trunk/pep-0306.txt	(original)
+++ peps/trunk/pep-0306.txt	Mon Nov 3 16:28:02 2008
@@ -2,7 +2,7 @@
 Title: How to Change Python's Grammar
 Version: $Revision$
 Last-Modified: $Date$
-Author: Michael Hudson <mwh at python.net>, Jack Diederich <jackdied at gmail.com>, Nick Coghlan <ncoghlan at gmail.com>
+Author: Michael Hudson <mwh at python.net>, Jack Diederich <jackdied at gmail.com>, Nick Coghlan <ncoghlan at gmail.com>, Benjamin Peterson <musiccomposition at gmail.com>
 Status: Active
 Type: Informational
 Content-Type: text/plain
@@ -33,34 +33,36 @@
 
 Checklist
 
- __ Grammar/Grammar: OK, you'd probably worked this one out :)
+ __ Grammar/Grammar: OK, you'd probably worked this one out :)
 
- __ Parser/Python.asdl may need changes to match the Grammar.
- Use Parser/asdl_c.py to regenerate Include/Python-ast.h
-
- __ Python/Python-ast.c may need changes to create the AST
- objects involved with the Grammar change. Lib/compiler/ast.py
- will need matching changes to the pure-python AST objects.
+ __ Parser/Python.asdl may need changes to match the Grammar. Run
+ make to regenerate Include/Python-ast.h and
+ Python/Python-ast.c.
+
+ __ Python/ast.c will need changes to create the AST objects
+ involved with the Grammar change. Lib/compiler/ast.py will
+ need matching changes to the pure-python AST objects.
 
 __ Parser/pgen needs to be rerun to regenerate Include/graminit.h
- and Python/graminit.c
+ and Python/graminit.c. (make should handle this for you.)
 
 __ Python/symbtable.c: This handles the symbol collection pass
- that happens immediately before the compilation pass
+ that happens immediately before the compilation pass.
 
 __ Python/compile.c: You will need to create or modify the
- compiler_* functions for your productions.
+ compiler_* functions to generate opcodes for your productions.
 
 __ You may need to regenerate Lib/symbol.py and/or Lib/token.py
- and/or Lib/keyword.py
+ and/or Lib/keyword.py.
 
 __ The parser module. Add some of your new syntax to test_parser,
- bang on parsermodule.c until it passes.
+ bang on Modules/parsermodule.c until it passes.
+
+ __ Add some usage of your new syntax to test_grammar.py
 
 __ The compiler package. A good test is to compile the standard
 library and test suite with the compiler package and then check
- it runs. You did add some of your new syntax to the test
- suite, didn't you?
+ it runs. Note that this only needs to be done in Python 2.x.
 
 __ If you've gone so far as to change the token structure of
 Python, then the Lib/tokenizer.py library module will need to


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /