0%

Haskell beginner tutorial

前一陣子都在忙C++ Grandmaster的比賽,沒什麼時間紀錄一些東西,最近對Functional Programming感到興趣,找Haskell當作的入門的開始。做些紀錄。

安裝

以Ubuntu為例,先安裝Haskell。

1
$ apt-get install ghc

接著就能用ghci進入直譯器了,用Ctrl+D退出ghci。

Script Programming

有兩種方式可以達成

在ghci當中載入

首先我們先來寫一個test.hs文件

lang: bash
1
2
3
$ cat > test.hs << EOF
add x y = x + y
EOF

在ghci中載入test.hs

lang: bash
1
2
3
4
5
6
$ghci
Prelude> :l test
[1 of 1] Compiling Main ( test.hs, interpreted )
Ok, modules loaded: Main.
*Main> add 3 4
7

當成一般的 Script 使用

這個方案是要加上 #!/usr/bin/runghc 且Script當中需要有main存在
以下是個範例

lang: bash
1
2
3
4
5
6
7
$ cat > hello.hs << EOF
> #!/usr/bin/runghc
> main=putStrLn "Hello, Haskell from elf"
> EOF
$ chmod +x hello.hs
$ ./hello.hs
Hello, Haskell

編譯成執行檔

同樣的,這個方案也需要有main存在

lang: bash
1
$ ghc hello.hs -o hello

其他有關Haskell的教學

網路上可以找到不少,先以這幾個當入門教材

Haskell入門的5個步驟

Haskell在线教程

Tutorials - Haskell