> (7) I tried using a list to return multiple variables from a > function. However, this turns out to be of type any. These variables can be > displayed but not used in operations any further. This means that you have > to remember the types of each variable in the list. Then, manually in the > calling function extract and explicitly typecast each variable in the > returned list. Is there an easier way of doing this ??
I am somehow surprised that Axiom cannot work with multivalues. (1) -> foo(a: Integer, b: Integer): (String, Integer) == ("sum", a+b); The constructor Tuple takes 1 argument and you have given 2 . (1) -> foo: (Integer, Integer) -> (String, Integer) The constructor Tuple takes 1 argument and you have given 2 . In Aldor the following program works just fine. Ralf ------------ multi.as ------------------------------------- -- Run the program via -- aldor -grun -laldor multi.as -- and get the output --: We call the function foo --: foo(7, 11) = (Sum, 18) #include "aldor" #include "aldorio" import from Integer; foo(a: Integer, b: Integer): (String, Integer) == ("Sum", a+b); main(): () == { stdout << "We call the function foo" << newline; (s, c) := foo(7, 11); stdout << "foo(7, 11) = (" << s << ", " << c << ")" << newline; } main(); _______________________________________________ Axiom-developer mailing list Axiom-developer@nongnu.org http://lists.nongnu.org/mailman/listinfo/axiom-developer