Talin wrote:
> class Foo(base1, base2, metaclass=mymeta):
> ...
-1 on this syntax, I think it's ugly.
Alternative proposals:
class Foo(base1, base2) as MyMeta:
...
or
class Foo(base1, base2) = MyMeta:
...
> class Foo(base1, base2, metaclass=mymeta, private=True):
> ...
class Foo(base1, base2) as MyMeta(private=True):
...
or
class Foo(base1, base2) = MyMeta(private=True):
...
> This attribute is a method named __metacreate__
Very bad choice of name -- it's not creating a meta-anything,
and gives no clue what it is creating.
> It would be possible to leave the existing __metaclass__ syntax in
> place. Alternatively, it would not be too difficult to modify the
> syntax rules of the Py3K translation tool to convert from the old to
> the new syntax.
The existing syntax actually has some advantages, e.g.
you can do things like
class Foo:
class __metaclass__:
# Real class methods defined here
which I think is rather elegant, so I'm not sure I'd
like the new syntax to completely replace the old one.
--
Greg
_______________________________________________
Python-3000 mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-3000
Unsubscribe:
http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com