Python's "only one way to do it" philosophy isn't good?

Terry Reedy tjreedy at udel.edu
Thu Jun 21 20:29:51 EDT 2007


"Douglas Alan" <doug at alum.mit.edu> wrote in message 
news:lcfy4ljej2.fsf at gaffa.mit.edu...
| > But why is the ability to abstract syntax good?
|
| It allows the community to develop language features in a modular way
| without having to sully the code base for the language itself.

Anyone can write modules, experimental or otherwise, without touching the 
code base for any particular implementation.

For those whose know one of the implementation languages, source code 
control systems allow one to do experiments on branches without 'sullying' 
the trunk or impeding the development thereof.  There are a least a few 
experimental branches, and branches of branches, in the main CPython 
repository and an unknown number of independent branches out in the 
community for either production use or for developing features aimed back 
at the core.

One of the goals of the PyPy project was to allow people to experiment with 
syntax extensions in Python itself.  (But I don't know how easy that is 
yet.)

But I think that overall the problem of designing new syntax is more in the 
design than the implementation.  Anything new has to be usable, readable, 
not clash too much with existing style, not introduce ambiguities, and not 
move the extended language outside the LL(1) [I believe that is right] 
subset of CFLs.

tjr






More information about the Python-list mailing list