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
open-axiom-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open-axiom-devel

Reply via email to