On 03/18/2013 12:16 AM, Larry Hastings wrote:
I'll amend my PEP soonish to reflect this. Specifically the semantics of the /, [, and ] lines in the parameter section.

I've just posted this revision.

I'd like to draw everyone's attention to the top entry in the Notes section, reproduced below:

* The DSL currently makes no provision for specifying per-parameter
  type annotations.  This is something explicitly supported in Python;
  it should be supported for builtins too, once we have reflection support.

  It seems to me that the syntax for parameter lines--dictated by
  Guido--suggests conversion functions are themselves type annotations.
  This makes intuitive sense.  But my thought experiments in how to
  convert the conversion function specification into a per-parameter
  type annotation ranged from obnoxious to toxic; I don't think that
  line of thinking will bear fruit.

  Instead, I think we need to add a new syntax allowing functions
  to explicitly specify a per-parameter type annotation.  The problem:
  what should that syntax be?  I've only had one idea so far, and I
  don't find it all that appealing: allow a optional second colon
  on the parameter line, and the type annotation would be specified...
  somewhere, either between the first and second colons, or between
  the second colon and the (optional) default.

  Also, I don't think this could specify any arbitrary Python value.
  I suspect it would suffer heavy restrictions on what types and
  literals it could use.  Perhaps the best solution would be to
  store the exact string in static data, and have Python evaluate
  it on demand?  If so, it would be safest to restrict it to Python
  literal syntax, permitting no function calls (even to builtins).


Syntax suggestions welcome,


//arry/
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to