[Python-3000] Fwd: Conventions for annotation consumers (original) (raw)
Phillip J. Eby pje at telecommunity.com
Wed Aug 16 18:54:02 CEST 2006
- Previous message: [Python-3000] Fwd: Conventions for annotation consumers
- Next message: [Python-3000] Fwd: Conventions for annotation consumers
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
At 11:41 AM 8/16/2006 -0500, Collin Winter wrote:
On 8/16/06, Phillip J. Eby <pje at telecommunity.com> wrote:
At 10:09 AM 8/16/2006 -0500, Collin Winter wrote: >On 8/15/06, Phillip J. Eby <pje at telecommunity.com> wrote: >>Personally, I thought Guido's original proposal for function annotations, >>which included a typecheck operator that was replaceable on a >>per-module basis (and defaulted to a no-op), was the perfect thing -- >>neither too much semantics nor too-little. I'd like to have it back, >>please. :) > >I'd be perfectly happy to go back to talking about "type annotations", >rather than the more general "function annotations", especially since >most of the discussion thus far has been about how to multiple things >with annotations at the same time. Restricting annotations to type >information would be fine by me.
Who said anything about restricting annotations to type information? I just said I liked Guido's original proposal better -- because it doesn't restrict a darned thing, and makes it clear that the semantics are up to you. The annotations of course should still be exposed as a function attribute. Sorry, I meant "restrict" as in having it stated that the annotations are for typechecking, rather than attempting to support a dozen different uses simultaneously. The annotations would still be free-form, with the semantics up to whoever's implementing the typecheck function, and Python itself wouldn't take any steps to enforce what can or can't go in the annotations. Is this more along the lines of what you meant?
Yes, but it doesn't mean that the notion of "type" may not be fairly expansive. For example, I can foresee wanting to use this "type" information to manage marshalling from web forms or XML-RPC requests... defining command-line options and help... GUI field/widget information for command objects, and so on.
In other words, I want open-ended annotation semantics to allow all sorts of metadata-driven behavior.
I think the notion that there's a problem with "attempting to support a dozen different uses simultaneously" is a red herring. Docstrings and function attributes do just that, and civilization as we know it has not collapsed.
- Previous message: [Python-3000] Fwd: Conventions for annotation consumers
- Next message: [Python-3000] Fwd: Conventions for annotation consumers
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]