[Python-ideas] Ordered storage of keyword arguments (original) (raw)
Antoine Pitrou solipsis at pitrou.net
Fri Oct 29 10:49:31 CEST 2010
- Previous message: [Python-ideas] Ordered storage of keyword arguments
- Next message: [Python-ideas] Ordered storage of keyword arguments
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On Fri, 29 Oct 2010 10:30:26 +0200 "M.-A. Lemburg" <mal at egenix.com> wrote:
Greg Ewing wrote: > M.-A. Lemburg wrote: >> Python has always tried >> to make the most common use case simple, so asking programmers to >> use a meta-class to be able to access the order of definitions >> in a class definition isn't exactly what the normal Python >> programmer would expect. > > But needing to know the order of definitions in a class > is a very uncommon thing to want to do in the first > place.
I've already pointed to a couple of existing use cases where the authors had to play all sorts of tricks to access the order of such definitions. Since Python programs are executed sequentially (within the resp. scope) in the order given in the source file, it is quite natural to expect this order to be accessible somehow. If it were easier to access this order, a lot of the extra magic needed to map fixed order records to Python classes could go away.
Interestingly, this order is already accessible on the code object used to build the class namespace:
def f(): ... class C: ... x = 5 ... def y(): pass ... z = 6 ... code = f.code.coconsts[1] code.conames ('name', 'module', 'x', 'y', 'z')
Regards
Antoine.
- Previous message: [Python-ideas] Ordered storage of keyword arguments
- Next message: [Python-ideas] Ordered storage of keyword arguments
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]