2007-05-31から1日間の記事一覧

“lethevert is a programmer - 言語を選ぶ基準”を Smalltalk で

lethevert is a programmer - 言語を選ぶ基準 一般的な Smalltalk の場合、 | f | f := [:x | | g h | g := [:y | x + y]. h := [:x | g value: 10]. h]. (f value: 10) value: 1 "=> 20 " 残念ながら、Squeak Smalltalk ではこれでは駄目で、h のブロック変…

reduce(l|r) を Squeak Smalltalk で

404 Blog Not Found:Code Snippets - reduce(l|r)を実装汁! 定義。 SequenceableCollection >> reducel: binaryBlock ^self allButFirst inject: self first into: binaryBlock SequenceableCollection >> reducer: binaryBlock | nextValue | nextValue := …

Ruby「ファイバ」vs. Io「アクター」 スピード対決

平たく言うとコルーチン対決。ついでに Squeak Smalltalk もスレッドで参戦。環境は 1GHz PowerPC, OS X 。 まず、一個あたりの生成にかかる時間を計測。 Ruby (1..10).each do |n| GC.start num_fs = (n * 1e3).to_i t0 = Time.new root = Fiber.current fs…