Haskell
http://www.haskell.org/haskellwiki/Haskell
Haskellをお薦めされたので触ってみますメモ。
Haskellは関数型で(つまりすべてが関数呼びだしで処理される)、
静的な暗黙的型付けで(型はコンパイラによって確認され、明示的に宣言する必要はない)、
遅延評価(必要となるまで処理されない)の言語です。
なるほど…わからん。
##インストール
Homebrew で ghc(Glasgow Haskell Compiler) をDL.
結構時間かかるので放置推奨。
$ brew install ghc
$ brew install haskell-platform
##起動
GHCiはGHCの対話環境
ghciコマンドで起動してハロワする。
$ ghci
Prelude> putStrLn "harowa"
harowa
Prelude> 1+2
3
Prelude> 4 ^ 2
16
Prelude> (1-5)^2
16
Prelude> "harowa"
"harowa"
GHCiは行全体を一つの式だと解釈し、それを評価する。式は複数の行に渡っていてはいけない。
:quit
あるいは短縮形の:q
でGHCiを離脱。
Prelude> :quit
##奇数を求めてみる。
Prelude> take 3 [1,3..]
[1,3,5]
Prelude> take 5 [1,3..]
[1,3,5,7,9]
Prelude> print (1 < 2)
True
Prelude> print (2 < 1)
False
##型の指定
型を指定するときは::
Prelude> 1 :: Int
1
Prelude> 1 :: Double
1.0
##リスト
[]を用いる.
Prelude> [1,2,3]
[1,2,3]
Prelude> [1 .. 5]
[1,2,3,4,5]
Prelude> [1 .. 7]
[1,2,3,4,5,6,7]
Prelude> [1,3 .. 9]
[1,3,5,7,9]
Prelude> [1,3 .. 10]
[1,3,5,7,9]
Prelude> map (+2) [1 .. 7]
[3,4,5,6,7,8,9]
##スクリプト
拡張子「hs」はHaskellスクリプトであることを示す。
test.hs
hello.hsを作ったとする。
main = putStrLn "hello,world!"
ターミナルでファイルの場所に移動して、
$ ghc hello.hs
それから
$ ./hello
hello,world!
で、出る。
GHCはhello.hsというソースファイルをコンパイルし、
hello.oというオブジェクトファイルとhello.hiというインタフェースファイルを生成する。
次にこのオブジェクトファイルをGHC付属のライブラリとリンクし、
Unix/Linux/Macならhello、Windowsならhello.exeという実行ファイルを作成する。
とりあえずここまで。
詳しい入門は以下を参照のこと。
#Haskell入門メモ
お気楽 Haskell プログラミング入門
http://www.geocities.jp/m_hiroi/func/haskell.html
Haskell 入門に役立つサイト
http://mymemo.weby117.com/develop/haskell/haskell_1.html
Haskell のお勉強
http://www.shido.info/hs/index.html
ウォークスルー Haskell
http://walk.wgag.net/haskell/index.html
本物のプログラマはHaskellを使う
http://itpro.nikkeibp.co.jp/article/COLUMN/20060915/248215/
#参照元
Mac に Homebrew で Haskell 入れて HelloWorld
http://qiita.com/amay077/items/f2f7f1324ca5ea296dbb
栄光のグラスゴーHaskellコンパイルシステム利用の手引き
http://www.kotha.net/ghcguide_ja/7.0.4/
ウィキペディア Haskell
http://ja.wikipedia.org/wiki/Haskell
10分で学ぶHaskell
http://www.haskell.org/haskellwiki/10分で学ぶHaskell