In article <··········@serv-200.dfki.uni-kl.de>,
Frank <·······@dfki.uni-kl.de> wrote:
>Conditions [in LCL 4.1] seem to be implemented by structures and giving any
> kind of slot
>option to define-condition, blows the defstruct mechanism because of illegal
>slot options (eg. :reader).
This is unfortunately true.
>Has anyone else had problems with this?
Yes. It sucks.
> How can I implement slot options for
>a condition?
Short answer: you can't use DEFCLASS slot options. You *can* use
DEFSTRUCT slot options.
*Or* write your own DEFINE-CONDITION macro that supersedes
LCL:DEFINE-CONDITION. All you really need is an intercessory layer
that parses DEFCLASS slot options and generates the appropriate code
(e.g., :reader expands into a DEFMETHOD). Once the options were
parsed, your macro could even call LCL:DEFINE-CONDITION (sans
offending options) to do the meat of the work.
--
Len Charest, Jr. Speed of Lightning===>
JPL Artificial Intelligence Group
·······@underdog.jpl.nasa.gov <<<Power of Thunder>>>