このエントリに載せていたC++のコードを、HaskellとOCamlで書いてみました。(あと、C++のコードも整理しました) コードを置いておきます。 Haskell版(sph.hs) OCaml版(sph.ml) C++版(sph.cpp) Haskell版(sph.hs)の実行方法は、 $ ghc --make -O sph.hs $ ./sph 300 です。./sphの引数は計算するステップ数です。上記のsph.zipにはData/Vector.hsというベクトル演算のためのモジュールを入れてあります。 同様に、OCaml版(sph.ml)の実行方法は、 $ ocamlopt -pp 'camlp4o -parser Camlp4ListComprehension' -o sph sph.ml $ ./sph 300 です。-ppオプションは、プリプロセッサにCamlp4を使ってO
![Haskell、OCamlでSPH法](https://cdn-ak-scissors.b.st-hatena.com/image/square/20890d7044c61d1c5aa7a4f957be512961ae734d/height=288;version=1;width=512/http%3A%2F%2F2.bp.blogspot.com%2F_w9gcOO4qfvo%2FSu1SC_fDkBI%2FAAAAAAAAALA%2FohHoieVtXz8%2Fw1200-h630-p-k-no-nu%2Fresult00000075.png)