[Python-Dev] Son of PEP 246, redux (original) (raw)

Michael Walter michael.walter at gmail.com
Thu Jan 13 15:33:17 CET 2005


Ahhh, there we go, so "file" is type you declare. All I was asking for, I thought you were thinking in a different/"more sophisticated" direction (because what "f" actually wants is not a file, but a "thing which has a read() like file" -- I thought one would like to manifest that in the type instead of implicitely by the code). Your concept is cool, tho :-)

Michael

On Thu, 13 Jan 2005 08:52:21 -0500, Phillip J. Eby <pje at telecommunity.com> wrote:

At 10:18 PM 1/13/05 +1000, Nick Coghlan wrote: >Michael Walter wrote: >>Yepyep, but how you declare types now? Can you quickly type the function >>def f(x): x.read()? without needing an interface interface xoff: def >>read(): pass or a decorator like @foo(x.read)? I've no idea what you >>mean, really :o) > >Why would something like > > def f(x): > x.read() > >do any type checking at all?

It wouldn't. The idea is to make this: def f(x:file): x.read() automatically find a method declared '@implements(file.read,X)' where X is in x.class.mro (or the equivalent of MRO if x.class is classic).


Python-Dev mailing list Python-Dev at python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/michael.walter%40gmail.com



More information about the Python-Dev mailing list