Newsgroups: comp.lang.scheme
Path: cantaloupe.srv.cs.cmu.edu!rochester!cornellcs!travelers.mail.cornell.edu!news.kei.com!news.mathworks.com!newsfeed.internetmci.com!howland.reston.ans.net!ix.netcom.com!netcom.com!wnewman
From: wnewman@netcom.com (Bill Newman)
Subject: How to read and write data with circular references?
Message-ID: <wnewmanDG74tr.9w2@netcom.com>
Organization: NETCOM On-line Communication Services (408 261-4700 guest)
X-Newsreader: TIN [version 1.2 PL1]
Date: Mon, 9 Oct 1995 19:29:50 GMT
Lines: 25
Sender: wnewman@netcom3.netcom.com

In the Lisp FAQ, there is a question

         [5-4]  How can I store data and CLOS instances (with possibly
                circular references) on disk so that they may be
                retrieved at some later time? (Persistent Object Storage)

Part of the answer is specific to CLOS, but part of the answer discusses
storing general data (1) using the Common Lisp #. macro to write
binary data, and (2) writing your data in portable form.  As far as I
know, (1) is not usable in Scheme.  The description of (2) is

    The other technique is to produce an ASCII representation of the Lisp
    objects which may then be saved to a file. To reproduce the data, one
    can load (or compile and load) the file. This technique is portable
    between different Lisps and platforms. Unfortunately, the resulting
    data is not necessarily EQ to the original. Kerry Koitzsch's
    save-object.lisp package is included in the Lisp Utilities Repository,
       ftp.cs.cmu.edu:/user/ai/lang/lisp/code/ext/save_obj/

Is there an analogous save-object package available for Scheme?
I haven't found anything in the FAQ or in the SLIB docs..

  Bill Newman
  wnewman@netcom.com

