Haskell
Haskellで「値代入したい!」(代入はできなくて、値束縛はできる) こちら let v = [[3,2,1],[0,4,5]] 非対話式なら(この資料(こちら)に出ている列車の問題を解くための助走)以下のようなものをhoge.hsに書いてloadすればよい initTrain :: [[Int]] -- テスト…
Haskellの手習いをしている 圏をわかるために、数学っぽくない例を挙げているサイトを参考にしている その中の、行列の圏とあみだくじの圏とを併せてみよう あみだくじの圏で「結合」というのは、本数が等しいあみだくじを連結すること 連結がうまくいくって…
mapという関数がある Hoogleで調べると map f [x1, x2, ..., xn] == [f x1, f x2, ..., f xn] map f [x1, x2, ...] == [f x1, f x2, ...] とある リスト[]のすべての要素にfを働かせますよ、という関数である "mapは便利なので,リスト以外の自分の使ったデ…
GCHiコマンド(:type (略して:t), :info (略して:i)とか) Hoogle, Hayoo (Haskellのコード探し) Haskell98の中身の確認 パスのこと、後付けパッケージ・モジュールとか
型 Haskellは型付きλ計算(Wiki)に基づく関数型プログラミング言語 関数の入出力の型をかっちり決めている、と言う意味 前の記事で作成した、"repeated"関数にも型がついている それを表示させるためのコマンドが":type" Prelude> let repeated f n = \x -> (…
関数型プログラミング言語 「そもそも関数型プログラミングって」(古典的説明がこちら) そこで挙げられている「仕事を抽象化しておくことについて」の例として出てくる、「再帰関数」をパターン化すること 初期値と2項演算による再帰関数は"reduce"と呼んで…
値 演算子 関数 関数の定義 環境 環境のスコープ 型 構成子 クラス 型クラス 型構成子クラス モジュール
「GHCはインストールされたパッケージだけを認識します」(こちら) インストールされてGHCに認識されるパッケージの一覧は、次のようにして、確認できます コマンドプロンプトで ghc-pkg list と打つ 後からパッケージを取り込みたいときは、「取ってきて、イ…
処理の繰り返しのHaskell的表記とその使用 let repeated f n = \x -> (iterate f x)!!n repeated (+2) 3 5 repeated (+3) 3 5 3+2+2+2+2+2 5+2+2+2 5+3+3+3 let repeated f n = \x -> (iterate f x)!!n let repeated : "repeated"という名前の関数を作る f,n…
目次 インストール・起動・使い始め Haskellを学ぶときの調べもの Haskellを学ぶときに使うコマンドとか ペースメーカーは『本物のプログラマはHaskellを使う』(そんなに気張らなくてもよいと思うけれど…)こちら 0. そもそもこのシリーズ記事を読むための基…
Haskell 98で提供しているものを眺める こちら
Haskellの「すでに入っている」関数のコードを見る Hoogle(こちら)や Hayoo!(こちら)
GCHiコマンド 2. 型とその多相性で、作った関数の型をみたり、型の情報を覗いたりしている 使っているのは":"で始まるコマンド それらはGCHiコマンドと言うものらしく、こちらを参照 :type \f n -> repeated f n 12 :info Num *Main> :type \f n -> repeated…
誰かがコピーできるように置いてくれているソース群があったとする それを手元にとってきてどうするか こちらを使うことを例にとる このページではlfit2.lzhなるHaskellソースファイルを固めたものを紹介されている 手元にダウンロードして解凍するとMain.hs…
型クラスは"型クラス(type class)は相異なるデータ型に共通したインターフェイスを持つ関数を定義する。"(Wiki) クラスは、「こういうことをやりたい」という「抽象的な仕事」に対して定義する 「抽象的な仕事」は型に依存しないので(しないこともあるので…
目次 Haskellの構成要素 Haskellの特徴 クラス・インスタンス コンパイル
以下の2つを書き直しているだけ Haskellと圏論(Wikibooks) これの噛み砕き版(こちら) Haskellと圏論 Haskellが圏である Haskellを成り立たせているものを圏論の言葉で語ることができる Haskellは圏を作ったり、扱ったりすることができる Haskellが新たなデ…
インストール(こちらから)(Windows版) WinGHCiというのを立ち上げると、以下のような画面が出る "Prelude"というのは、こちらにあるように、対話式インタープリタ GHCiという方を立ち上げると、コマンドプロンプトのようなものが出るが、これも"Prelude"とな…
Haskellというものが少し気になっていた(こちら) 圏論も気になっていた(こちら) Haskellと圏論(Wikibooks) これの噛み砕き版(こちら) 自分なりのHaskellと圏論 実は、数学セミナーで2011年7月号より『圏論の歩き方』という連載が続いていた 2012年3号にて、…