Subject: Re: problem with delete
From: Erik Naggum <>
Date: 2000/10/05
Newsgroups: comp.lang.lisp
Message-ID: <>

* (Thomas A. Russ)
| Actually, it would seem to me that a conforming implementation could
| return T and T for this example.  There is no requirement that
| REMOVE create a new list, just that it not modify the original list.

  Well, I asked you (or anyone) to explain why it _should_ return nil
  and t, not whether it _could_ return something else.

| The hyperspec explicity says "The result of remove may share with
| sequence".  Of course the hyperspec also claims immediately before
| that sentence "If any elements need to be removed, the result will
| be a copy."  In the case of all the removed elements being at the
| front of the list that may not have really been the intention of the
| committee to require a copy.

  Would you care to implement the remove that shares structure and
  compare it with one that does not share structure?  I think this
  will be very illuminating.

  If this is not what you expected, please alter your expectations.