[Ecls-list] make-load-form fix

Juan Jose Garcia Ripoll lisp at arrakis.es
Mon May 29 05:44:19 UTC 2006


On Mon, 2006-05-29 at 09:56 +0200, Juan Jose Garcia Ripoll wrote:
> On Fri, 2006-05-26 at 20:38 +0200, Julian Stecklina wrote:
> > Juan Jose Garcia Ripoll <lisp at arrakis.es> writes:
> > > Ok, I see the typo in the original code. But I think it is much simpler
> > > to create a constant list with the initial data except for sites which
> > > reference the array itself or other non-printable structures. The latter
> > > would then appear in a smaller number of initialization statements. I
> > > will code that later.
> > 
> > Does this cover the case where the array is not trivially
> > self-referential? Say if it contains a structure or cons which in turn
> > references the array?

The fix has been implemented:

jlr at mpq3p59:~/src/ecls-new/build$ ecl
ECL (Embeddable Common-Lisp) 0.9h
Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya
Copyright (C) 1993 Giuseppe Attardi
Copyright (C) 2000 Juan J. Garcia-Ripoll
ECL is free software, and you are welcome to redistribute it
under certain conditions; see file 'Copyright' for details.
Type :h for Help.  Broken at EVAL.
> (si::system "cat foo.lsp")
(eval-when (compile)
  (setf *a* (make-array 10))
  (setf (row-major-aref *a* 1) *a*))

(let ((*print-circle* t)
      (a #.*a*))
  (format t "Self referential: ~A~%" (eq a (row-major-aref a 1))))

0
> (load (compile-file "foo" :verbose nil) :verbose nil)
;;; Loading #P"/home/jlr/lib/ecl/cmp.fas"
;;; Loading #P"/home/jlr/lib/ecl/sysfun.lsp"
Self referential: T
"/home/jlr/src/ecls-new/build/foo.fas"
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <https://mailman.common-lisp.net/pipermail/ecl-devel/attachments/20060529/aa80bfd2/attachment.sig>


More information about the ecl-devel mailing list