[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

mutiple values, procedures and continuations



I think the mv discussion could be helped considerably by keeping
procedures and continuations distinct.

Scheme procedures are not continuations.

It is an artifact of continuation semantics (and cps implementations)
that a procedure call can be thought of as composing a continuation
and a procedure.  Continuation semantics (and cps implemetations)
convert lambda-expressions to semantic functions which take
continuations as arguments.  Other semantics (and implementations)
may not.

The second argument to "with-values" is no more a continuation than the
first argument.  "with-values" need do no more continuation-mucking than
"apply".

Names need only hint at functionality.  We can leave some description for
the report instead of trying to do it all in the name.  "apply" is a good
example of a short name (it could have been "call-procedure-with-supplied-
values-and-values-from-list-and-send-result\(s\)-to-current-continuation").
"call-with-current-continuation" is a bad example of a short name
(which is why I say "call/cc" and you say "cwcc").   I am satisfied with
"with-values" unless someone can find something shorter and sweeter.
Following Guy's line of thought I was briefly tempted with "seulav"...