[SAGA-RG] SAGA Python language binding naming.
PFA van Zoolingen
pzn400 at few.vu.nl
Wed Aug 13 09:40:40 CDT 2008
>>>> Sync, Async, Task
>> This could also be my version if you explicitly named the parameters
>> and did: f.read( type=sync, len=len, buffer=buffer)
>
> Ah, I see - sorry, wasn't aware of the explicit parameter
> naming thing in python. Cute :-)
I don't know if cute is the right word for it. Before you know it, someone
will never forgive you for calling a language feature cute :P
>>> And there are more... All options have pro and cons. We
>>> had that discussion for a long time as we designed the task
>>> model. If you are interested in gazillions of mails running
>>> circles, I can dig them out of the archive ;-)
I read it and it's indeed an 'interesting' (and long) discussion. I am not
planning for another round of the same discussion, but the C++ solution is
not usable in Python. Your final summary of the problem (found at
http://wiki.cct.lsu.edu/saga/space/Task+Models ) states four solutions.
Templates (c) and internal task factories (b) are not usable. a and d are
really about adding a little 'thing' to to distinguish between doing a
sync or getting a async or task. The same can be accomplished with a flag
which is defaults type to 'sync'. It actually doesn't matter which
solution is chosen. More keystrokes are always needed.
Wait, I am adding another round to discussion. :/
>>> No idea if python provides some clever way to solve this -
>>> most other languages don't. Thus, please do also consider
>>> to put the flag in the first place, or to use some other
>>> qualifiers (method name, etc). Can't recall at the moment
>>> what way Hartmut chose in his Python implementation, sorry.
>>
>> If it is an optional parameter with a default specified, it has to go in
>> the back of the parameter list. I don't know if this clarifies some
>> issues for you?
>
> Yes, it does, thanks.
I think I also saw somthing resembling a flag in Hartmuts Python wrapper
apidoc, although I can't find it anymore. ('service' parameter?)
Anyway, happy left-handers day (aug 13th) everyone!
Paul.
More information about the saga-rg
mailing list