マージソート

基本に立ち戻って、マージソートをやってみた。
Ruby, C, Scala, Gaucheの4種類。
最初にRubyで書いて、他に移植という流れ。


ScalaGaucheはほぼ同じ。普通に再帰で書いたけど、Scalaは末尾再帰に最適化されてるそうな。


Cだけは配列をガンガン作ろうとするとmallocが大変なことになるので、1つを使いまわす形に。
tempはmallocしないで静的に定義してもいいかも。
Cはまだまだ慣れない。


Ruby

C

Scala

Gauche