Andy Wingo schreef op vr 11-02-2011 om 18:48 [+0100]:
> On Wed 02 Feb 2011 15:02, Jan Nieuwenhuizen <[email protected]> writes:
>
> > WARNING: (use): `remove!' imported from both (remove) and (srfi srfi-1)
>
> As far as I can tell, it never worked to merge generics between a
> regular procedure and a generic.
> And indeed that does not appear to work with 1.8.
I'm attaching the individual files; this works with 1.8.7:
19:52:20 janneke@vuurvlieg:~/vc/schikkers-list/remove
$ ./run.scm
WARNING: (use): `remove!' imported from both (srfi srfi-1) and (remove)
<class>: remove!
19:52:24 janneke@vuurvlieg:~/vc/schikkers-list/remove
> I don't understand what's going on here, really. Do you?
No, and if you say it's not supported, I'll just have to
choose other names for those functions.
Jan.
--
Jan Nieuwenhuizen <[email protected]> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | AvatarĀ® http://AvatarAcademy.nl
(define-module (use)
#:use-module (oop goops)
#:use-module (srfi srfi-1)
#:use-module (remove)
#:export (main))
(define obj (make <cls>))
(define (main)
(remove! obj))
#! /bin/sh
# -*- scheme -*-
exec guile --debug -L $(dirname $0) -s $0 "$@"
!#
;;(use-modules
;; (use))
((@ (use) main))
(define-module (remove)
#:use-module (oop goops)
#:use-module (srfi srfi-1)
#:duplicates (merge-generics)
#:export (<cls>
remove!))
(define-class <cls> ())
(define-method (remove! (self <cls>))
(format #t "<class>: remove!\n"))