Subject: Re: Questions about passing cons as parameter and the behavior of pop
From: (Rob Warnock)
Date: Sat, 24 Nov 2007 18:52:31 -0600
Newsgroups: comp.lang.lisp
Message-ID: <>
Ari Johnson  <> wrote:
| Kamen TOMOV <> writes:
| > Zach Beane wrote:
| >> What (first-class) object does POP modify?
| >
| > [POP] modifies the place. As a consequence the place is modified.
| > As the place is an existing object we can conclude that POP modifies
| > an existing object.
| Are places first-class objects?

No, not in Common Lisp. However, some Lisps in the past [e.g., Lisp
Machines] have had first-class objects called "locatives" (locations),
which *denote* places, and could be dereferenced to get or set the
place. Briefly:

    (LOCF <place>) ==> <location>

    (LOCATION-REF <location>) ==> <value-of-place>

    (SETF (LOCATION-REF <location>) <new-value>)

There was some discussion of them here in April 1999 which a search
of Google Groups might turn up. <>
was one of the articles, which might help the search.


Rob Warnock			<>
627 26th Avenue			<URL:>
San Mateo, CA 94403		(650)572-2607