From: Sharon Goodall
Subject: Replace fn: Franz lisp vs. Common Lisp
Date: 
Message-ID: <23841@mimsy.umd.edu>
In the near future, we are going to be porting a large application 
written in Franz Lisp (MIRRORS/II) to Common Lisp.  We make a lot of
use of the replace function in Franz Lisp, especially when we have
multiple pointers pointing to the same location and want to change
the value at that location.  We can't find a way to do this in 
Common Lisp.

From what I can tell, the replace function in Common Lisp only
works for sequences and we want to be able to replace non-sequences
such as flonums and fixnums.  Is there a way in Common Lisp to 
replace the value of a location in a structure which contains
a flonum so that after the replace, all variables pointing to
the old value suddenly point to the new value?

Here's an example of what we'd like to be able to do in Common Lisp:
Script started on Thu Apr 19 11:54:04 1990
{brillig:~}51: lisp
Franz Lisp, Opus 42.16.3
(C) Copyright 1985, Franz Inc., Alameda Ca.
=> (setq f a '1.0)
1.0
=> (setq b a)
1.0
=> (eq a b)
t
=> (replace a '0.0)
0.0
=> a
0.0
=> b
0.0
=> (eq a b)
t
=> (exit)


Thanks,
  Sharon Goodall
  Dept. of Computer Science
  University of Maryland, College Park
  internet: ·······@cs.umd.edu
  uucp: uunet!mimsy!goodall