Derick Eddington
2009-03-17 22:39:53 UTC
According to SRFI 39, the parameter expressions must be evaluated only
once per parameterize evaluation.
Larceny v0.97a4 (alpha test) (Mar 17 2009 11:29:20, precise:Linux:unified)
larceny.heap, built on Tue Mar 17 11:33:15 PDT 2009
ERR5RS mode (no libraries have been imported)
(rnrs io simple)
(srfi :39 parameters))
Autoloading (srfi :39 parameters)
(call/cc (lambda (cc) (set! k cc) 'first)))
value expr
param expr
param expr
param expr
param expr
first
param expr
param expr
param expr
second
once per parameterize evaluation.
Larceny v0.97a4 (alpha test) (Mar 17 2009 11:29:20, precise:Linux:unified)
larceny.heap, built on Tue Mar 17 11:33:15 PDT 2009
ERR5RS mode (no libraries have been imported)
(import
(rnrs base)(rnrs io simple)
(srfi :39 parameters))
Autoloading (srfi :39 parameters)
(define k)
(define p (make-parameter 1))
(parameterize (((begin (display "param expr\n") p)
(begin (display "value expr\n") 2)))(define p (make-parameter 1))
(parameterize (((begin (display "param expr\n") p)
(call/cc (lambda (cc) (set! k cc) 'first)))
value expr
param expr
param expr
param expr
param expr
first
(k 'second)
param exprparam expr
param expr
param expr
second
--
: Derick
----------------------------------------------------------------
: Derick
----------------------------------------------------------------