Haskellを始める
以前からhaskellには興味があったのですが、中途半端な勉強で、結局何も頭に残っていない状態です。
そもそも関数型言語の耐性がまだ出来ていないので、まだまだ身構えてしまいます。
今後haskellに加えてerlangもやっていきたいと考えているので、勉強しつつ、今度はちゃんと記録に残していこうと思います。
で、まずはhaskellでhello worldをやってみます。
-- hello.hs main = putStrLn "Hello World"
これをコンパイルして実行。
% ghc hello.hs % ./a.out Hello World
なんてことはないですね。では、次に標準関数を少し試してみます。
-- func.hs main = do print (sum arr) print (head arr) print (tail arr) print (length arr) where arr = [1,2,3,4]
Cとかに慣れてると、変数の扱いに戸惑ってしまうんですね。かといって、特別気持ち悪いわけではないです。
% ghc -e main func.hs 10 1 [2,3,4] 4
各関数の働きについてはなんとなく想像がつくと思います。
ghcの-eオプションは、func.hsのmain関数を実行するというものです。これで実行すると、a.outのような実行ファイルは生成しません。
haskellのドキュメントと格闘しながら勉強を続けていこうと思います。