2008-11-01から1ヶ月間の記事一覧

:before :after :method-combination

:method-combination CL-USER> (defclass foo1 nil nil) ;=> #<STANDARD-CLASS FOO1> CL-USER> (defclass foo2 (foo1) nil) ;=> #<STANDARD-CLASS FOO2> CL-USER> (defclass foo3 (foo2) nil) ;=> #<STANDARD-CLASS FOO3> ;; [ + and append list max min nconc or progn ] が利用可能らしい CL-USER> (defgeneric method1 (x)</standard-class></standard-class></standard-class>…

22日の勉強会

時間が空いてしまいましたが、22日はCLR/Hの第38回勉強会でした。 楽しかったなぁ。特にSqueakの実習が良かったです。 Smalltalkを復習して、勉強会の報告もかねて日記を書こうと思ってたんだけども、PCを触る暇が・・・(とか言いながら↑のようなものを作る…

love visualizer

C#

なんか最近全然C#触ってなかったので、息抜きに何か小さいもの作ろう!と思い、id:uskzさまの日ごろの熱い想いをvisualizeすることに相成りました。 LINQ to XML と GDIの復習と愛の再確認ができました。 22日に一体何があったのでしょうか。

change-class

change-classってクラス入れ替えるって言ってもsetqし直す(新規にインスタンスを作る)だけでしょ?何のためにあるの?とか思っていたのだけど、それだけのために存在するのもおかしいと思って色々試してみた。同じ名前のスロットがあると値を引き継いでく…

クラスの再定義

CL-USER> (defclass foo () ((x :accessor foo-x :initform 1))) #<STANDARD-CLASS FOO> CL-USER> (defclass bar (foo) nil) #<STANDARD-CLASS BAR> CL-USER> (setq b (make-instance 'bar)) #<BAR #x1A3190F5> CL-USER> (setf (foo-x b) 10) 10 ;; y というスロットは存在しないよ! CL-USER> (slot-exists-p b 'y) N</bar></standard-class></standard-class>…

さ〜て来週のsumimさんは?

積読化されてたのですが今読みました。 二つのオブジェクト指向とそれぞれのメリット - Smalltalkのtは小文字です もともとSmalltalkには興味はあったけど、結局まだ触ったことはない。 GoF本にも載っていましたがC++のコードを追うばかりで、Smalltalkはと…

fibの美容整形

C#

まだこのネタを引っ張る気か・・・!と言われそうですが。。。 前回のヤツがどうも気に入らなかったのでもう1度。 前よりはマシかなぁ class Fibonacci2 { public class LazyZipper<T1, T2, TResult> { private List<TResult> memo = new List<TResult>(); public IEnumerable<TResult> ZipWith( IEnumera</tresult></tresult></tresult></t1,>…