会場となる部屋は前回と同じだったがパーティションを外してないぶん第0回よりも狭かった。今回は初心者だけだしね。でも司会の人によれば何にでも答えられるレベルの人もちらほら居たらしい。なにしに来てるんだろうか。
2章発表 @dekosuke
- Prelude.hsのなかみはHoogleをみるとどんなものかわかる。
- `div`に対して`mod`もあるよ。
- sum $ take 3 [1..] -> 6
- ウィンドウを2つ開いてエディタとghciを実行するとよい。
- 変数/関数は小文字で始まる。シングルクォートはよくつかう。ちょっとパラメータあある亜種関数とか。
3章発表 @beketa
- 型推論 f::A->Bかつe::Aならばfe::B。
- リストの長さは型にふくまれない。
- ghciでは:loadじゃなくて:importをつかう。
- カレーとカリーはスペルは同じだがカリーと呼ぶ慣習。
- ->は右結合、関数適用は左結合。
- クラス制約は型制約とよばれることがおおい。
- 数値自体も多重定義されている。
- Haskell Curryは人の名前。Haskellのカレーではない。
4章発表 @risou
- else ifに相当するものはない → ガードをつかう。
- test (x:_) と test (x,y) は似てるけどちがう。
- カリー化された関数
演習問題
発表のあと、Google Groupに載せられた演習問題をもくもくと解いていく。とにかく問題の量がおおい。虎さんによれば簡単だから量を増やしたとのこと。VAIO type PのチープなキーボードとWiMAXの遅延のせいでとっても疲れた。(WiFiをつなぐとよくPちゃんが落ちるので避けたい..)
問題には英語版と日本語版があったが、基本的に英語版をみながら意味がわからなところは日本語を見て。英語版でfooとなっているところが英語版だとhogeになってるなど、けっこうこまかい。
Google Groupの問題を手元のテキストファイルにコピペするのに無駄に手間取った。これも時間ロス。
ちょこちょこ虎さんに質問している人もいるようだったが、この勉強会のねらい(たぶん)であるグループディスカッションみたいなことは自然発生しなかった。静か〜な部屋。もくもく。
途中でもってきたm&m'sミルクチョコレート(220kal)を一気喰いする。こうも静かだとチョコレートのコーティングを破壊する音が気になる。(周りのひとに臭い攻撃もしてたかも、すみませぬ。)
21:40に宿題の発表があったあと予定どおり閉会。というか、このままおわっちゃんかい! という流れ。このあと懇親会があるようだが、調べによると22:08に神保町を出ないと家に帰れないため、そのまま帰宅。神保町で駆け込み乗車したのもあって時間に余裕があったので新線新宿から京王新宿に移動して始発電車に乗りなおし、ぐっすり眠ることができた。今日は3時間しか寝てないわりには頭が動いたなぁ。