[Python-Dev] Re: Simulating shells (was Re: Changing the Division Operator -- PEP 238, rev 1.12)
Michael Hudson
mwh@python.net
30 Jul 2001 15:35:11 -0400
Paul Prescod <paulp@ActiveState.com> writes:
> Michael Hudson wrote:
> >
> >...
> >
> > At one point I was going to use the same bits as are used in the
> > code.co_flags field, which was probably where the bitfield idea
> > originated.
> >
> > By "keyword arguments" do you mean e.g:
> >
> > compile(source, file, start_symbol, generators=1, division=0)
> >
> > ? I think that would be mildly painful for the one use I had in mind
> > (the additions to codeop), and also mildly painful to implement.
>
> Sorry, could you elaborate on why this is painful to use and implement?
Well, I don't know in detail how keyword arguments work from the C
side. Your suggestion turns a roughly 4 line change I knew exactly
how to do into a 20-30 line change I'd have to work on. I only said
"mildly painful". The awkwardness of use would just mean using **,
yes.
> Considering the availability of **args, the code above looks to me like
> syntactic sugar for the code below:
>
> > compile(source, file, start_symbol, {'generators':1, 'division':0})
Well yes, but I think the latter is closer to what one means, which is
to say passing a (i.e. one) set of options.
> > would be better from my point of view. I think this is a bit of a
> > propeller-heads-only feature, to be honest, so I'm not that inclined
> > to worry aobut the API.
>
> I would just like to see an end to the convention of using bitfields in
> Python everywhere. You're just my latest target.
Fair enough. I've probably been corrupted by C on this one.
> Python is not a really great bit-manipulation language!
<aside>Augmented assignment helps a *lot* here!</aside>
At any rate, the fact that I'd temporarily forgotten about the
existence of Jython is the more serious blunder...
Cheers,
M.
--
. <- the point your article -> .
|------------------------- a long way ------------------------|
-- Cristophe Rhodes, ucam.chat