[Phillip] > > In the second place, the most important cue to understanding the behavior > > of a template block is the template function itself; the bare syntax gives > > it the most prominence. Blocks like 'synchronized(self):' should be > > instantly comprehensible to Java programmers, for example, and 'retry(3):' > > is also pretty self-explanatory. And so far, template function names and > > signatures have been quite brief as well.
[Aahz] > This works IMO IFF Python is regarded as a language with user-defined > syntactical structures. Guido has historically disagreed strongly with > that philosophy; until and unless he reverses his opinion, this is > precisely why the non-keyword version will continue to receive -1 from > me. (As it happens, I agree with Guido, so if Guido wants to change, > I'll probably argue until I see good reason. ;-) Actually, I think this is a nice way to have my cake and eat it too: on the one hand, there still isn't any user-defined syntax, because the keyword-less block syntax is still fixed by the compiler. On the other hand, people are free to *think* of it as introducing syntax if it helps them understand the code better. Just as you can think of each distinct @decorator as a separate piece of syntax that modifies a function/method definition. And just as you can think of a function call as a user-defined language extension. -- --Guido van Rossum (home page: http://www.python.org/~guido/) _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com