>>571は Lisp で CLOS 使えばいいんじゃないか?