classification
Title: Minor trimming for ASDL parser
Type: enhancement Stage: resolved
Components: Interpreter Core Versions: Python 3.3
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: benjamin.peterson Nosy List: benjamin.peterson, python-dev, taihyun.hwang
Priority: normal Keywords: patch

Created on 2012-07-31 22:08 by taihyun.hwang, last changed 2012-08-01 04:50 by python-dev. This issue is now closed.

Files
File name Uploaded Description Edit
asdl1.patch taihyun.hwang, 2012-07-31 22:08 first patch review
Messages (3)
msg167056 - (view) Author: Taihyun Hwang (taihyun.hwang) Date: 2012-07-31 22:08
Attached patch enables ASDL parser to construct fields in the right order.

It resolves the issue below in Parser/asdl.py
# XXX can't I just construct things in the right order?

We can safely use left-recursive grammar since Parser/spark.py implements Earley parser.


The patch doesn't affect Python-ast.[ch] as expected.

$ make Include/Python-ast.h Python/Python-ast.c
$ diff -s ~/test/Python-ast.h Include/Python-ast.h
Files /home/xenosoz/test/Python-ast.h and Include/Python-ast.h are identical
$ diff -s ~/test/Python-ast.c Python/Python-ast.c
Files /home/xenosoz/test/Python-ast.c and Python/Python-ast.c are identical


Time consumption before/after the patch:
-- before patch --
time make Include/Python-ast.h
real    0m0.578s \ user    0m0.500s \ sys     0m0.060s

time make Python/Python-ast.c
real    0m0.687s \ user    0m0.620s \ sys     0m0.050s

-- after patch --
$ time make Include/Python-ast.h
real    0m0.588s \ user    0m0.510s \ sys     0m0.060s

$ time make Python/Python-ast.c
real    0m0.677s \ user    0m0.630s \ sys     0m0.030s


It touches:
Misc/ACKS
Parser/asdl.py
msg167058 - (view) Author: Benjamin Peterson (benjamin.peterson) * (Python committer) Date: 2012-07-31 22:10
Thanks for the patch. I'll look at this.
msg167083 - (view) Author: Roundup Robot (python-dev) (Python triager) Date: 2012-08-01 04:50
New changeset cbfb915424fd by Benjamin Peterson in branch 'default':
construct fields in the right order (closes #15517)
http://hg.python.org/cpython/rev/cbfb915424fd
History
Date User Action Args
2012-08-01 04:50:20python-devsetstatus: open -> closed

nosy: + python-dev
messages: + msg167083

resolution: fixed
stage: resolved
2012-07-31 22:10:12benjamin.petersonsetassignee: benjamin.peterson

messages: + msg167058
nosy: + benjamin.peterson
2012-07-31 22:08:23taihyun.hwangcreate