pre-PEP: Simple Thunks
Steven Bethard
steven.bethard at gmail.com
Wed Apr 20 01:55:05 EDT 2005
Greg Ewing wrote:
> Brian Sabbey wrote:
>
>> do f in with_file('file.txt'):
>> print f.read()
>
>
> I don't like this syntax. Try to read it as an English sentence:
> "Do f in with file 'file.txt'". Say what???
>
> To sound right it would have to be something like
>
> with_file('file.txt') as f do:
> print f.read()
>
This is still strange since f is the arguments the thunk was called
with, e.g. the current syntax is basically:
do <unpack_list> in <returnval> = <callable>(<params>):
<code>
I don't really know a more readable sequence of keywords, though someone
suggested 'with' and 'from', which might read something like:
with <unpack_list> from <callable>(<params>):
<code>
which looks okay to me, though I'm not sure that 'with' makes it clear
that this is not a normal block... I also find readability problems
when I try to stick <returnval> back in.
One of the other issues is that, with the current proposal, the thunk
can be called multiple times within a function, so the keywords have to
make sense both with a single iteration interpretation and a multiple
iteration interpretation... Makes it even harder...
STeVe
More information about the Python-list
mailing list