Hatena::Grouphaskell

lnzntのHaskell日記 このページをアンテナに追加 RSSフィード

2010年11月02日(火)

最初のステップ

| 22:30 |  最初のステップ - lnzntのHaskell日記 を含むブックマーク はてなブックマーク -  最初のステップ - lnzntのHaskell日記  最初のステップ - lnzntのHaskell日記 のブックマークコメント

上のサイトで入門の例題を行ないました。

Haskell の真の最初のプログラムは階乗です。

fac.hs*1

fac 0 = 1
fac n = n * fac (n-1)

main = print (fac 42)


以下は並列/マルチコアのプログラミング*2

import Control.Parallel

main = a `par` b `par` c `pseq` print (a + b + c)
    where
        a = ack 3 10
        b = fac 42
        c = fib 34
   :
  (略)

Haskell 始めます

21:04 | Haskell 始めます - lnzntのHaskell日記 を含むブックマーク はてなブックマーク - Haskell 始めます - lnzntのHaskell日記 Haskell 始めます - lnzntのHaskell日記 のブックマークコメント

Haskell の勉強をこの日記で始めます。

関数型言語を理解することが目的です。

環境

Ubuntu に ghc6 パッケージをインストール。

$ ghci                    # インタプリタ
$ ghc -o hello hello.hs   # コンパイラ

メモ

。。。難しい、頭くらくらしそうです。

*1Haskell の拡張子は .hs

*2:このプログラムをコンパイルするには、Ubuntu では libghc6-parallel-dev パッケージが必要

*3:ファーストクラスである関数

*4文脈によらず式の値が構成要素により決定する性質