Language support for functions that return multiple values
arcanesentiment.blogspot.com
arcanesentiment.blogspot.com
Assignments work left to right, approximately like this:
(x, y) => (y, x)
which swaps x and y.Calls that return multiple values look like
x => sincos => (sinx, siny)
and we can string together all sorts of things like this x => sincos => sum => y
Procedures looked something like sincos(double x) {
...
} returns (sinval, cosval)
All this syntax is pretty approximate, but perhaps you'll get the idea. To me, it seemed attractive in that a tuple of values flowed in at the top of a procedure, then left to right on each line, and top to bottom between lines, and finally a tuple of values is returned. Seemed like a natural sugaring of CPS style.