Why don't people like lisp?
Jock Cooper
jockc at mail.com
Thu Oct 23 12:26:20 EDT 2003
Matthew Danish <mdanish at andrew.cmu.edu> writes:
> On Wed, Oct 22, 2003 at 09:52:42AM -0700, Jock Cooper wrote:
> > One of the important differences is that MY-FUNC is lexically isolated
> > from the environment where WITH-OPEN-FILE appears. The macro version
> > does not suffer this; and it is often convenient for the code block
> > in the WITH-OPEN-FILE to access that environment.
>
> (call-with-open-file
> #'(lambda (stream)
> ...)
> "somefile"
> :direction :input)
>
> WITH-OPEN-FILE happens to be one of those macros which doesn't require
> compile-time computation, but rather provides a convenient interface to
> the same functionality as above.
>
> --
Right, if the function is specified as a lambda inside the call then it
*would* have access to the surrounding lexical space.
The recent thread on macros has got me thinking more carefully about
when I use macros, and if I could use functions instead.
More information about the Python-list
mailing list