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?

No.

> 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.

I also vote ;-) for reject, because the validity would depend on the cleverness
of the compiler.  In fact, how could the compiler possibly now that a statement
that it cannot assign a type to is non-side-effecting?

Martin


-------------------------------------------------------------------------
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