From: Frédéric BEAULIEU
Subject: p-lists in Common-Lisp
Date: 
Message-ID: <3ACB88A5.7DE19E83@iname.com>
(Sorry if this message appears twice, i can't determine whether my
previous "send" worked)
Hi,

Thanks for all the messages replying and discussing my previous question
about p-lists. I've worked hard on it, and my p-lists work fine.

But I've another problem : i need to have a symbol contained in another
symbol's p-list. I've managed to do this using a simple setf, but the
resulting "symbol-preperty" is in fact the same symbol as the one i
created before putting it into the p-list.

Here's an exemple (preferable to my awful english ;-) :

(intern "X" "USER")
(setf (get 'X 'type) 'list)
(setf (get 'X 'name) "V1")
(setf (get 'X 'value) '(1 2 3))
(intern "Y" "USER")
; now, i want X to be a "property" of Y
(setf (get 'Y 'Test) 'X)
; and i'd like to be able to modify X without altering the property X of
Y, e.g. :
(setf (get 'X 'name) "V2")
(symbol-plist (get 'Y 'Test))
; returns : (VALUE (1 2 3) NAME "V2" TYPE LIST)
; i'd like : (VALUE (1 2 3) NAME "V1" TYPE LIST)

Two Questions :

1) Is it possible ?
2) HOW !?

Thanks in advance for any answer.

--
BEAULIEU Fr�d�ric
·········@iname.com