GaucheのMOPいじり
Gaucheでは、
(define-class <myclass> () () :metaclass <myclass-meta>)
とすればいい。また、
(define-generic new-generic :class <mygeneric>)
とすればいい。
と、ここまではGaucheのリファレンスで探せばすぐに見つかるのだけれど、
7.6.3 メソッドのインスタンシエーション
Method: make (class
Gauche ユーザリファレンス: 7.3 インスタンス) &rest initargs
と、とてもそっけなく書かれていて、initargsとして何を渡せばいいのか分からない。というか、このへん全体的に記述がないんだけど、何か意図があるのかな?総称関数やメソッドの振る舞いを変えるのは推奨しない、とか。