2008/3/15 の comp.lang.scheme
- TinyTalk tar+gzip available
- TinyTalk という Scheme のオブジェクトシステムがあってそれのR6RS版とGambit版がでたよという話。
- TinyTalk in Launchpadの事か。
- ダウンロードしてみた。Tiny というだけあって小さいね。
例を見てみると意外と使えるかもしれない。 $ がアクセサなどを呼ぶ手続きか。
(import (tiny-talk)) (define p1 (object ((x 1)(y 2)))) ($ add-method! p1 '->string (lambda (self) (string-append "(point " (->string [$ x self]) " " (->string [$ y self]) ")"))) [$ ->string p1] "(point 1 2)" (define-predicate point?) (point? 3)
Scheme や Lisp のオブジェクトシステムをちゃんと使ったことがないので TinyTalk が何に秀でているかが分からない。
小さいこと?。
むしろこれくらいなら自分で作れる気がする。(泥沼)