Subject: Re: Deep copy in lisp: how?
From: rpw3@rigden.engr.sgi.com (Rob Warnock)
Date: 2000/04/10
Newsgroups: comp.lang.lisp
Message-ID: <8cr9tm$1scu2$1@fido.engr.sgi.com>
Erik Naggum  <erik@naggum.no> wrote:
+---------------
| * Courageous <jkraska1@san.rr.com>
| | I know this is possible one way or the other, for I have seen automatic
| | deep copy implemented via code generation in C++.
| 
|   I'm sorry, but you have been tricked.  just because it exists for C++ is
|   not in any way, shape, or form an argument for the _correctness_ of the
|   implementation or the algorithm or even the concept to begin with.
+---------------

Indeed. Perhaps it's time once again to drag out Kent Pitman's classic
"Parenthetically Speaking" article on the subject:

	<URL:http://world.std.com/~pitman/PS/EQUAL.html>
	The Best of Intentions: EQUAL Rights--and Wrongs--in Lisp

which addresses the question "Why is there no generic COPY function?"
[in Common Lisp], and explains why any so-called "automatic" deep copy
is inherently *wrong*.


-Rob

-----
Rob Warnock, 41L-955		rpw3@sgi.com
Applied Networking		http://reality.sgi.com/rpw3/
Silicon Graphics, Inc.		Phone: 650-933-1673
1600 Amphitheatre Pkwy.		PP-ASEL-IA
Mountain View, CA  94043