[Bese-devel] Patch for control-flow.lisp

Marco Baringer mb at bese.it
Thu Mar 10 10:13:04 UTC 2005


Sławek Żak <slawek.zak at gmail.com> writes:

> Fixes referral to undefined self variable in the inspector and a typo.
> Tested with HEAD (however it is called in arch:)

the real issue with this lies my miking of two different concepts:
defgeneric/cc and defaction. while it's true that defaction is a
wrapper around defmethod/cc, which is a wrapper around defmethod, an
action is not 'just another method' and attempting to define actions
in the body a defgeneric/cc is a Bad Idea (TM).

however, in control-flow.lisp and in other places it'd still be nice
to do:

(defgeneric/cc my-action (component)
  (:method ((foo foo)) ...)
  (:method ((bar bar)) ...))

so i'm going to write a macro which wraps defgeneric and expands into
defaction (as opposed to defmethod/cc as defgeneric/cc does). however,
i'm having a really hard time coming up with the name for such a
macro. suggestions?

> --- orig/src/rerl/standard-component/control-flow.lisp
> +++ mod/src/rerl/standard-component/control-flow.lisp
> @@ -63,8 +63,8 @@
>  methods, to avoid the creation of spurious actions this action
>  can be used whenever we want to cause a compoent ot answer.
>  
> -VALUE should default to COMPOENT.")
> -  (:method ((c component) &optional (value c))
> +VALUE should default to COMPONENT.")
> +  (:method ((self component) &optional (value self))
>      (answer value)))

-- 
-Marco
Ring the bells that still can ring.
Forget the perfect offering.
There is a crack in everything.
That's how the light gets in.
	-Leonard Cohen



More information about the bese-devel mailing list