syntax for funcion attributes
Hello, I'm not a python-dev regular, so sorry if this is a FAQ. What's the status of defining a syntax for function attributes (PEP 232)? I'm using __doc__ to carry metadata about methods right now, but would very much like to use function attributes. However, without a specialized syntax, I'm stuck doing things like VeryLongMethodName.MetadataName = "foo" which is fine if it's a one-off, but I'd like others to use the code, and this isn't exactly a friendly mechanism. The proposals in the PEP would be fine; I was thinking something like def foo(a): """this is the docstring""" .this_is_a_function_attribute = 1 but that's just off the top of my head. I'm happy to do some work writing a PEP if there's some consensus about what syntax would be preferable. Cheers, -- Mark Nottingham
"Mark Nottingham" <mnot@mnot.net> writes:
Hello,
I'm not a python-dev regular, so sorry if this is a FAQ. What's the status of defining a syntax for function attributes (PEP 232)?
I don't think changes here are likely.
I'm using __doc__ to carry metadata about methods right now, but would very much like to use function attributes. However, without a specialized syntax, I'm stuck doing things like
VeryLongMethodName.MetadataName = "foo"
which is fine if it's a one-off, but I'd like others to use the code, and this isn't exactly a friendly mechanism.
If PEP <the one I haven't written yet> gets accepted, you'll be able to do def with_metadata(func): func.metadata = "yes" def f(blah) [with_metadata]: .... or even def with_metadata(data): def inner(func): func.metadata = data return inner def f(blah) [with_metadata("yes")]: .... Would that suit you? Cheers, M. --
Why are we talking about bricks and concrete in a lisp newsgroup? After long experiment it was found preferable to talking about why Lisp is slower than C++... -- Duane Rettig & Tim Bradshaw, comp.lang.lisp
participants (2)
-
Mark Nottingham
-
Michael Hudson