[Python-ideas] anonymous object support
dag.odenhall at gmail.com
dag.odenhall at gmail.com
Fri Aug 5 22:00:23 CEST 2011
2011/8/4 Matej Lieskovský <lieskovsky.matej at googlemail.com>:
> Um, I'm kinda new round here but here goes:
> If I understood the problem, we are looking for a way of creating an object
> which has no specific class.
> My proposal:
> perhaps a "namespace" statement would do, behaving somewhat like this:
> namespace MyObject:
> statements
> is equivalent to:
> class MyClass(object):
> statements
> MyObject = MyClass()
> MyClass = None
> I chose "namespace" as that's what I think we are trying to create
> constructive criticism is welcome
Not useful enough to warrant the introduction of a new keyword, IMO.
There's some overlap here with the proposed 'given' keyword, and as
you noted yourself it can already be done with the class construct.
You could use a metaclass/base class or a class decorator to disable
instantiation, if you really feel like it. Also note that you can read
attributes directly on a class.
Finally, you'll want to use the 'del' keyword on your last line. This:
del MyClass
removes the reference to the class in the namespace, but doesn't
actually delete the class itself (until garbage collection and when
there's no remaining references - and MyObject is still "referencing"
it here).
More information about the Python-ideas
mailing list