Scheme Request for Implementation 182,
"ADBMAL, ALET, and ALET*,"
by Joo ChurlSoo,
is now available for discussion.
Its draft and an archive of the ongoing discussion are available at <
https://srfi.schemers.org/srfi-182/>.
You can join the discussion of the draft by filling out the
subscription form on that page.
You can contribute a message to the discussion by sending it to <
srfi-182@srfi.schemers.org>.
Here's the abstract:
Unlike the VALUES and CALL-WITH-VALUES mechanism of R5RS, this one
uses an explicit representation for multiple return values as a
single value, namely a procedure. Decomposition of multiple values
is done by simple application. The macro, ADBMAL, evaluates to a
procedure that takes one procedure argument. The ADBMAL macro can
be compared with LAMBDA. While a LAMBDA expression that consists of
<formals> and <body> requires some actual arguments
later when the evaluated LAMBDA expression is called, an ADBMAL
expression that consists of <expression>s corresponding to
actual arguments of LAMBDA requires <formals> and
<body>, that is, an evaluated LAMBDA expression, later when
the evaluated ADBMAL expression is called.
This SRFI also introduces the new LET-syntax ALET and ALET*, which
depend on ADBMAL to manipulate multiple values, and which are
compatible with LET and LET* of R5RS in single-value bindings. They
also have a binding form making use of VALUES and CALL-WITH-VALUES
to handle multiple values, and new binding forms for list, cons, and
other multiple values. In addition, they have several new binding
forms for useful functions such as escape, iteration, optional
arguments, etc.
Regards,
SRFI Editor
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)