第5回 ふつうのHaskellプログラミング読書会へ行ってきた
土曜日、第5回 ふつうのHaskellプログラミング読書会へ行ってきました。
もっと書けるようになりたいデス。本でやってるみたいに、シェルコマンドの再実装とかで練習すればいいのカナ。。。
今回の範囲の感想
- 演算子の優先順位
- 数字つきの優先順位表が出てきてひいた。
- 既存の演算子は再定義できない。hidingを使えばできるが、よろしくないらしい。
- 使用例を発見: http://github.com/nfjinjing/loli/blob/master/src/Network/Loli/Template.hs
- このアレゲなプロジェクトは、懇親会で教えてもらいました。
- 再帰に慣れない/思いつかない
- 入力文字を60バイトで折り返して表示せよ、という練習問題を皆で解いたんだけど、自分はタプルを思い出すのに時間を要した上に、どうすれば「1〜60バイトの文字列+改行文字」を繰り返せるか一生懸命考えていた。Haskellにはfor文ないのに…あー…。
- 関数の部分適用
- 今回新しく学んだ概念。評価される前の中途半端な状態って、いったい何? まだピンとこない。
Haskellの開発を手助けするツール
Javaを読み書きしていて分からないことがあった時、Javadocを手軽に参照したり、標準ライブラリの実装を確認したりするようなことを、Haskellでもしたい。
というわけで、Haskellに詳しいuchidaさんにお聞きして、どうすればよいのか教えてもらいました。ありがとうございます! こんなかんじだそうです。
- ライブラリを検索するには
- Hoogleがベンリ。引数と戻り値の型で逆引きできる。これはすごい。
- 組込みライブラリの実装を見るには
- http://haskell.org/ghc/docs/6.12.2/html/libraries/base-4.2.0.1/Prelude.htmlで、Haskell 98 Preludeの関数を探せる。実装を見るには、各ページの「Source」というリンクを辿る。
その他、気になった話題
- Darks
- Haskellで書かれたバージョン管理システム
- ちょろっと調べてみたら、"パッチを当てる"という独特の概念で管理するんですね
- VZ Editor - Wikipedia
- 帰宅して速攻調べました。実在した! 非実在エディタじゃなかったんだ…(ごめんなさいごめんなさい)