[Python-Dev] Density of pie-decorator syntax (original) (raw)

Josh Hoyt josh at janrain.com
Fri Aug 6 18:20:20 CEST 2004


One problem I have with the pie-decorator syntax is that it is very typographically dense. The @ character runs in with the following function name. If there are multiple lines of decorators, the problem is worsened. For clarity, the decorators will have no whitespace lines between them, creating a dense block.

After experimenting, I have found that readability is increased if there is one space required after the @. Don't take my word for it:

Current Python 2.4a2 syntax:

@framework_stuff(lots, of, args) class Quux(object):

@check_args(int, str)
@counted
@staticmethod
def frobnicate(foo, bar):
    pass

Proposed change requiring a space:

@ framework_stuff(lots of args) class Quux(object):

@ check_args(int, str)
@ counted
@ staticmethod
def frobnicate(foo, bar):
    pass


More information about the Python-Dev mailing list