From: Francis Sergeraert
Subject: Re: Compiling Defconstant with a structure value.
Date:
Message-ID: <4pjirp$mng@ujf.ujf-grenoble.fr>
I've got the following answer by Franz for the question about
compiling defconstant with a struture value:
=================================================================
Please modify your file for Allegro CL for Windows 3.0
to have the following content:
(eval-when (compile eval load)
(defstruct s a b))
(eval-when (compile eval load)
(defmethod make-load-form ((self s) )
(make-load-form-saving-slots self)))
(defconstant s-constant (make-s :a 1 :b 2))
As for your question:
Is there a still newer behaviour of eval-when underlying this
question ?
No, rather it is a question of what default methods are provided.
In Allegro CL 4.3 it is not necessary for you to write a
make-load-form for your structure class. Note that if you do
so, ACL 4.3 uses the newer specification of make-load-form which
is to take an optional environment argument in addition to the
required argument.
==================================================================
Congratulations for Franz for having quickly and correctly
answered by their support service.
But Common Lisp becomes more and more esoteric... It's life.
--
Francis Sergeraert.