F#を試してみた
30分プログラム、その503。OCamlに似てるけど、互換性はそれほどないと評判のF#を触ってみた。
ちょっとしか触っていないけど、内包表記があったり、小粋な演算子(|>とか<|とか)が定義されていたりと、いい言語な気がする。今、学校でC#を使っているけれど、これをF#に置き換えれたら、かなり幸せになれる気がする。
ただ、Windowsでしか動かないから、使うのが結構面倒くさい。一応、MacPortsにも入っているから、あとで試そうと思う。
使い方
VisualStudioに読み込んで、Ctrl-F5で以下のような結果が得られる。
fact(10) = 3628800 fib(5) = 120
ソースコード
#light let rec fib n = if n = 0 then 1 else n * fib(n - 1) let rec fact = function 0 -> 1 | n -> n * fact (n-1) let _ = printfn "fact(10) = %d" <| fact 10; printfn "fib(5) = %d" <| fib 5