[plt-scheme] Re: to define, or to let

From: Bill Richter (richter at math.northwestern.edu)
Date: Fri Apr 23 21:51:20 EDT 2004

   Joe Marshall <jrm at ccs.neu.edu> spanks me soundly:

   In the expression (foo goo) as normally understood, both foo and
   goo are variables and evaluating a variable does not cause
   side-effects.

You're right, Joe!  How silly of me!  And you're right: if foo is
bound to a procedure of no arguments, say by

(define (foo) <body>)

Then evaluating (foo) will evaluate the body, which might well contain
side-effect stuff.  So ((foo) (goo)) is the right expression to study.


Posted on the users mailing list.