Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ames!think!kulla!barmar From: barmar@kulla (Barry Margolin) Newsgroups: comp.lang.lisp Subject: Re: Incremental worlds, on conventional processors Keywords: layered saved images, disk space, Poplog, Harlequin, Lucid, Franz Message-ID: <30019@news.Think.COM> Date: 25 Sep 89 02:53:14 GMT References: <3391@cbnewsc.ATT.COM> <924@skye.ed.ac.uk> Sender: news@Think.COM Reply-To: barmar@kulla.UUCP (Barry Margolin) Organization: Thinking Machines Corporation, Cambridge MA, USA Lines: 31 In article <924@skye.ed.ac.uk> jeff@aiai.uucp (Jeff Dalton) writes: >That is, instead >of setting up a state and then saving the world, I write a >file that sets up the state, compile it, and load it in >when needed. This sounds like you're arguing against saved worlds in general, not just incremental worlds. I don't know of any professional-quality Lisps that don't provide saved worlds. Would you really prefer to load several hundred compiled files rather than start up a saved world? It takes us an hour to load the basic Connection Machine software into Lucid on a Sun-4; we'd be dead without saved worlds, if everyone had to reload the software every time they started up Lisp. >In some cases, saved worlds are better; in other cases, though, >it's better to have compiled files. For example, it there tend >to be fewer ordering constraints when loading several compiled files >than when trying to restore several saved worlds. What kinds of ordering constraints are there with incremental worlds? The routine for loading incremental worlds should handle this automatically. Compiled files, on the other hand, often have ordering constraints. You have to load the file that defines a package before loading files that reference the package. And if a file contains any top-level function calls you have to load the files that define the functions before loading it. Barry Margolin Thinking Machines Corp.