-- Test1.russell
open integer in
open ref[ val ] in
open < i: loc ~ new<>, n: loc ~ new<> > in
assign <lhs~n, rhs~1>;
assign <lhs~i, rhs~0>;
do
(less <a~valOf i, b~10>)?t =>
assign <lhs~n, rhs~+<a~valOf n, b~valOf n>>;
assign <lhs~i, rhs~+<a~valOf i, b~1>>
od ;
putString <string~"The answer is: ", stream~stdout>;
putString <string~toString(valOf n), stream~stdout>;
putString <string~character.toString('\n), stream~stdout>
ni
ni
ni