Zope 3.0, and why I won't use it
Alex Martelli
aleaxit at yahoo.com
Tue Nov 16 01:54:10 EST 2004
Josiah Carlson <jcarlson at uci.edu> wrote:
> def d_adapt(t):
> def f(a):
> return adapt(a, t)
> return f
>
> def d_adaptors(*adaptors):
> #some work necessary to make kwargs work
> def f(fcn):
> def f(*args):
> return fcn(*[i(j) for i,j in zip(adaptors, args)])
> return f
> return f
>
> @d_adaptors(d_adapt(foo), d_adapt(bar))
> def x(y, z):
> <body of x>
Can do with less work:
def d_adap(*types):
def f(fcn):
def f(*args):
return fcn(*(adapt(i, j)
for i, j in izip(types, args)))
f.__name__ = fcn.__name__
return f
return f
@ d_adap(foo, bar)
def x(y, z):
<body of x>
but the point is whether, if and when 'optional static typing' _syntax_
gets it, it will have this semantics or that of inserting a lot of
typechecks... people can do typecheks or adaptation now, and neither
will go away -- but which, if either, should syntax facilitate? That,
as I see it, is key.
Alex
More information about the Python-list
mailing list