Another decorator syntax idea Using Guido's example: -------------------- @ Symbols -------------------- class C(object): @staticmethod @funcattrs(grammar="'@' dotted_name [ '(' [arglist] ')' ]", \ status="experimental", author="BDFL") def longMethodNameForEffect(longArgumentOne=None, longArgumentTwo=42): """This method blah, blah. It supports the following arguments: - longArgumentOne -- a string giving ... - longArgumentTwo -- a number giving ... blah, blah. """ raise NotYetImplemented -------------------- decorate keyword -------------------- class C(object): def longMethodNameForEffect(longArgumentOne=None, longArgumentTwo=42): decorate: staticmethod funcattrs(grammar="'@' dotted_name [ '(' [arglist] ')' ]", \ status="experimental", author="BDFL")] """This method blah, blah. It supports the following arguments: - longArgumentOne -- a string giving ... - longArgumentTwo -- a number giving ... blah, blah. """ raise NotYetImplemented Pros: - Doesn't hide the function name behind @ garbage. - 'decorate' is easier to look at than '@'. - 'decorate' is more meaningful to most readers than '@'. - Block structure isolates decorators from surrounding code, making them more readable. - Indentation rules are consistent with the rest of Python. Cons: - Not pear shaped. - Connelly
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4