[Python-Dev] Re: decorators and 2.4

Fernando Perez fperez528 at yahoo.com
Fri Jun 25 02:58:21 EDT 2004

Anthony Baxter wrote:

> So here's the state of play with decorators and 2.4.


> Channelling Guido, via his EP keynote
> (http://www.python.org/doc/essays/ppt/euro2004/euro2004.ppt)
> I'm assuming that "Java-style" is something like:
> @staticmethod
> def blah(args):
>      body
> @funcattrs(vegetable="blah", author="GvR")
> def blah2(args):
>      body

I'd like to cast a -1 vote in the form of a small plea.  It turns out that
IPython (http://ipython.scipy.org) uses @ as a special character to identify
'magic' commands which control the shell itself.  If this became valid syntax,
IPython would require not only internal rewrites but also a fair amount of
users would have to change their working habits.

I'm fully aware that the core python development won't be held back by
third-party tools which use non-standard syntax. But at least I'd like to cast
a voice, in case the argument is in the end narrowly decided between this and
other alternatives.

IPython has become a fairly popular tool, judging by a quick google search, and
the fact that it's distributed in SUSE 9.1, as well as being available for
Debian, OSX (via Fink), Gentoo and other smaller Linux distributions.  There
are also several projects (mainly in scientific computing) which use it as
their interactive environments (I designed it deliberately trying to make this
kind of use very easy). IPython is also available for Windows, and using Gary
Bishop's readline library it provides full ANSI coloring and readline editing
support.  With current (and coming) CVS, it will grow an extension (pysh) for
use as a system-shell with python syntax, a long-requested feature from many

I completely understand that I can't pressure any of this decision, since I
chose an unused but by no means 'reserved' character.  But at least I'd like to
let the core team know about this particular side-effect, which will impact a
fair amount of users out there.

Regards to all,


More information about the Python-Dev mailing list