[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
"unspecified" and SET!
Date: 18 Jun 89 23:17:50 GMT
From: Dorai Sitaram <titan!dorai@rice.edu>
...
Perhaps, SET! is not the ideal side-effecting construct for an
expression-oriented language. Felleisen and Friedman [1] propose a
side-effecting construct called a SIGMA-capability. This looks just
like a LAMBDA-expression, but whereas LAMBDA introduces new bound
variables, SIGMA modifies the binding of existing lexical variables.
In other words, on applying a SIGMA-capability to arguments, the
variables corresponding to the SIGMA-parameters are side-effected.
Problems about "unspecified" return values disappear....
I'm having a hard time applying this idea to the NEWLINE procedure -- which
is specified in R3RS to return an unspecified value. Is the idea to
introduce a side-effecting construct that looks like LAMBDA, but performs a
newline when applied to an output port?
((NULINE () <body>)
(CURRENT-OUTPUT-PORT))