"Marco Maggi" <[EMAIL PROTECTED]> writes:

> Ciao,
>
>   when I define a generic function that accepts a procedure
> or generic function as parameter I have to define two
> identical functions:
>
>   (define-method (map (p <procedure>) ...
>   (define-method (map (p <generic>) ...
>
> is there a base class for <procedure> and <generic>?

Here's how you can find out:

[EMAIL PROTECTED]:~$ guile -q
guile> (use-modules (oop goops))
guile> (apropos "class-preced")
(oop goops): class-precedence-list      #<primitive-procedure 
class-precedence-list>
guile> (class-precedence-list <procedure>)
(#<<procedure-class> <procedure> 4031bce0> #<<class> <applicable> 4031d4c0> 
#<<class> <top> 4031ff40>)
guile> (class-precedence-list <generic>)
(#<<entity-class> <generic> 4031d1c0> #<<entity-class> <entity> 4031d3e0> 
#<<class> <object> 4031fe80> #<<class> <applicable> 4031d4c0> #<<class> <top> 
4031ff40>)
guile> 

So yes, it seems there is a common base class, <applicable>.

Regards,
     Neil



_______________________________________________
Guile-user mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/guile-user

Reply via email to