[saga-rg] Task model...
Tom Goodale
goodale at cct.lsu.edu
Thu Nov 3 18:06:20 CST 2005
On Thu, 3 Nov 2005, 'Andre Merzky' wrote:
> Quoting [John Shalf] (Nov 03 2005):
>>
>>>>> It is not really much more readable than 4a1.
>>>>> Therefore, I'm uncertain if it is worth fragmenting our
>>>>> approach to bindings in different languages when there
>>>>> is not a clear benefit in terms of readability or
>>>>> implementation complexity.
>>>>
>>>> I think that 4a2/4a3 actually allow nicer
>>>> implementations, as it allows to have the different
>>>> async parts somewhat separate from the sync parts. We
>>>> think its nicer :-)
>>>
>>> 4a3 the only implementation in a C++ like manner I can
>>> think of, which provides:
>>> - an interface which conforms to modern C++ concepts
>>> pushed by Boost et.al.
>>> - it avoids not needed overhead if some of the features
>>> are not needed/used (this gets optimised away by any
>>> decent C++ compiler)
>>
>> Well, if the compiler can actually take advantage of that syntactical
>> convention to apply more efficient optimizations, then that is a
>> clear advantage to that approach (whether or not I find the syntax
>> obscure).
>
> _S_AGA. If it is obscure to you or others, its not a good
> choice. Performance is a second order issue. However, as I
Also, we have not used templates anywhere else in the abstract API, so I
think it would be a bad idea to move that way now. This does not preclude
the C++ language binding using such if there is a clear benefit.
On a practical note, templates are one of the least portable features of
C++, especially in libraries (except template libraries), and I would
strongly urge that we do not use them for SAGA.
Tom
More information about the saga-rg
mailing list