2011-02-01から1ヶ月間の記事一覧

プログラミング Haskell 第7章 高階関数 その3

7.4 畳込関数 foldl からです。また間があいてしまいました。 foldl - 左結合の演算子を使った畳み込みパターン foldr とは効率に違いがある。普通に考えると foldl のほうが効率的だと思うけどどうなのでしょう。12章で Haskell の評価のしくみが解説される…

プログラミング Haskell 第7章 高階関数 その2

7.3 畳込関数 foldr からです 引数にリストを取る関数によくあるパターン f [] = v f (x:xs) = x `op` f xs -- op は演算子 foldr を使うとこのパターンを関数として抽出できる foldr (op) v が 上と同じになる 第6章で再帰をfoldrで書き直したように、再帰…

プログラミング Haskell 第7章 高階関数 その1

プログラミングHaskell作者: Graham Hutton,山本和彦出版社/メーカー: オーム社発売日: 2009/11/11メディア: 単行本(ソフトカバー)購入: 14人 クリック: 503回この商品を含むブログ (117件) を見る 高階関数 - 引数として関数を受けとったり、返り値として…

プログラミング Haskell 第6章 再帰関数

プログラミングHaskell作者: Graham Hutton,山本和彦出版社/メーカー: オーム社発売日: 2009/11/11メディア: 単行本(ソフトカバー)購入: 14人 クリック: 503回この商品を含むブログ (117件) を見る先週は1日しか読めませんでした。天候不順は朝の読書会の…

プログラミング Haskell 第5章 リスト内包表記 その2

昨日、一昨日と天候不順で読書時間がなくなってしまいました。リスト内包表記の続きです。 ガード - 生成器が生成する値のうち論理式が真(True)になるものだけを取り出す 素数判定する prime が以下のように定義できる factors n = [x | x <- [1...n], n `mo…

プログラミング Haskell 第5章 リスト内包表記 その1

プログラミングHaskell作者: Graham Hutton,山本和彦出版社/メーカー: オーム社発売日: 2009/11/11メディア: 単行本(ソフトカバー)購入: 14人 クリック: 503回この商品を含むブログ (117件) を見る第5章はリスト内包表記です。文法のひとつに1章を割いて説…

プログラミング Haskell 第4章 関数定義

プログラミングHaskell作者: Graham Hutton,山本和彦出版社/メーカー: オーム社発売日: 2009/11/11メディア: 単行本(ソフトカバー)購入: 14人 クリック: 503回この商品を含むブログ (117件) を見る第4章は関数の定義方法ということで「ふつうのHaskellプロ…

プログラミング Haskell 第3章 型とクラス その3

第3章最後の基本クラスの紹介部分 クラス = 「共通の"メソッド"を提供する型の集合」 メソッド = 「多重定義された関数」 そんなに難しく構える必要はなかったみたいですね クラスは型の型、メソッドは「このクラスの型ではこの名前の関数が定義されてないと…

プログラミング Haskell 第3章 型とクラス その2

関数型 - A -> B のような記法 カリー化された関数 複数の引数をもつ関数は、1つ引数をうけとって「残りの引数をうけとって結果を返す関数」を返す関数として解釈される Int -> (Int -> Int) こんな感じ -> は右結合なので上は Int -> Int -> Int と書いても…

プログラミング Haskell 第3章 型とクラス その1

Haskell といえば型システム。しかしクラスとは何でしょう。第3章を読みはじめます。 「型」は「値の集合」 v :: T と書いて「v の型は T」と解釈する v は評価されていない(簡約されていない)式のままでもいい。つまり、式は型を持たないといけない 型推論 …

プログラミング Haskell 第2章 はじめの一歩 その2

はじめの一歩にずいぶん時間かかってしまいましたが続き。 関数の適用はいちばん高い優先順位 よって関数への引数に関数適用を書く時にはかっこが必要 Hugs では関数はファイルに記述してロードしないといけない :load コマンドで読み込む :reload で再読込 …