Ralf Hemmecke <[EMAIL PROTECTED]> writes:
| > The return type clearly says what the function returns, no dispute
| > there. How do you feel about
| > f(a: Integer): (Integer, DoubleFloat) == {
| > b: Integer == 2;
| > b: DoubleFloat == 7.0;
| > (b, b);
| > (b, b);
| > Is it OK?
|
| Thanks.
|
| That is a case which is a bit tricky. One could tend to accept it,
| since the compiler can easily throw out the first "(b, b)"... but...
|
| But actually, the program should be OK for each statement. And so,
| since the compiler has no chance to figure out just one type for each
| of the b's in the first "(b, b)", that program must be rejected.
|
| So. Not OK.
|
| Was that your only concern?
No, but I don't have at the moment an exhaustive list of concerns that
I would be keepigng to myself :-).
However, I hope that people with more interests in this style of
programming will come up with a coherent, reasonably complete,
proposal that I could study and hopefully influence my preference.
I know of programming languages (and have written programs in such
languages) that allow similar form of overloading. I was never
impressed. That may change; but I suspect that would require more
extensive realistic examples and explanation of why it would be good
for me to abandon my unsophisticated world of non-overloaded variables.
-- Gaby
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
open-axiom-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/open-axiom-devel