■ [ruby][rspec] 「ANSI Common Lisp」9章のレイトレーサを移植した わーい動いたよー。 感想 ソースコードを理解するのに、移植はかなり有効。(全ての行の動作を把握しないと移植できないから) CLのletは、初期値がnilでよければ値を省略できるらしい。 (let (a b c) body..) とか 一応ソース。 あと、最初はRspecでテスト書いてたんだけど、途中からやめてしまった。 こっちもせっかくなので貼っておく。 require 'raytra.rb' describe "Fixnum#sq" do it "は、二乗を計算する" do 2.sq.should == 4 -10.sq.should == 100 end end context "Vector" do describe "#mag" do it "は、ベクタの長さを返す" do Vecto