2010-01-01から1年間の記事一覧

Haskellの基礎(3) モジュールと総合演習

4.2 総合問題 対になってる関数 遂になってる関数としてまとめられていて分かりやすかったので。 lines :: String -> [String] unlines :: [String] -> String linesして、行単位で処理してからunlinesで文字列にする。 確かにイディオムとして考えるとよい…

Haskellの基礎(3) モジュールと総合演習

4.1 コマンドライン引数の処理とモジュール main変数について う〜ん、C言語でいうところのグローバル変数に当たるのかなぁ? Mainヘッダにはmain変数がexport宣言されていて、includeすると参照可能になる感じ。 あぁ、手続き型脳が全開だ・・・。 Mainモジ…

Haskellの基礎(2) 型と高階関数

3.4 パターンマッチ :演算子について map関数の型、始め見たときよく分かりませんでした。 map :: (a -> b) -> [a] -> [b] map f [] = [] map f (x : xs) = f x : map f xs ですが、:演算子の説明を読み、 1 : [2,3] とすることで[1,2,3]が得られることが分…

Haskellの基礎(2) 型と高階関数

3.3 パターンマッチ(1) パターンマッチについて 日頃C言語などで開発をしている人にとっては不思議な文法です。 switch caseやif elseがあるなら、こんな文法要らないじゃん と思ってしまいますが、まぁHaskellの文法ということで。 でも新しい考え方ですね…

Haskellの基礎(2) 型と高階関数

3.1 型と値 今日は型についてです。 これまでちょこちょことHaskellの入門サイトを見てきましたが(そんなに見たわけではないけど)一番分かりやすいです。 これまでであれば Int -> [a] -> [a] なんて書かれると、ちょっとんんん〜?となってましたけど、今は…

Haskellの基礎(1) 関数とリスト

2.6 リスト処理の基本(3) tailコマンド これまでの節で学習してきた内容を使ったプログラム。 結構すんなり頭に入ってきた♪ 2.7 本章のまとめ ふむふむ、分かりやすいなぁ。これまでの節で掲載されていたサンプルプログラム。 とても分かりやすい。関数型言…

Haskellの基礎(1) 関数とリスト

2.4 リスト処理の基礎(1) countlineコマンド リストに関して これまでリストに関してちょっと考え違いしていたかも。 Haskellのリストはリテラルの書き方を見ると配列のようにイメージしてしまう。 たとえばC言語で配列は以下のように書くし、 unsigned char…

Haskellの基礎(1) 関数とリスト

2.1 「Haskellの基礎」の概要 今日からHaskellの基礎の勉強を開始します。がんばるぞ。 2.2 mainアクションと関数適用 関数とアクションの概念がすっきりと理解出来ないなぁ。 アクションについては後ほど解説があるそうだけどちょっと気になるので調べてみ…

ふつうのHaskell本ついに到着!

思ったより早く着ました。今日から早速読み始めました。 書籍の内容を掲載していくわけにもいかないので、感想などを中心に書いていこうと思います。 あと、読んでも分からなかったので調べたことなんかも書いていこう。 まえがき おや、レビューアの中にか…

支払い済ませました。

今日、Haskell本の支払いをコンビニで済ませてきました。 ということで今日は小見出しなんかを書いてみようかな。 小見出しです。 おぉ、いい感じです。さらに… さらに小見出しです。 ここまで来るとタダのボールドと大差ないですね。小見出しは一段までかな…

Amazonで注文しました。

ついに、Haskellの本を注文しました。本が届くまでは、このブログの書き方に慣れておこう。いろいろ練習します。 たとえば、ソースコードを記述するときは、枠で囲って書きたいですね。どうやってやるんだろう? void test(void) { printf("どんな感じ?"); …