>>> My view on scoping is that >>> b:Integer:=1 >>> b:Float:=2
>>> in the same scope should be an error. >> Why? > Which one to pick? There are at least three different answers simulatenously > in all AXIOM systems, > I'm consistently picking one. > We had this discussion before. Right. I actually don't understand why that is a problem. Does it have to do with being a 'variable' vs. being a 'constant'? But at least if I defined constants it should be no problem as in the following program. #include "aldor" #include "aldorio" f(a: Integer): (Integer, DoubleFloat) == { b: Integer == 2; b: DoubleFloat == 7.0; (b, b); } import from Integer, DoubleFloat; (i, d) := f(1); stdout << i << ", " << d << newline; It is completely clear what the last b's are. Wouldn't you accept such a program? The aldor compiler also doesn't let me have two variables with the same name and different type in the scope. And I would like to understand why it is allowed for constants but forbidden for variables. Where is the problem? Ralf ------------------------------------------------------------------------- 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