この春最もHello, worldな夜 すごいH本読書会#7 に参加して,発表してきた.今回の範囲は8-9.2章まで.発表は前半30分くらいで終わり,後半はずっともくもくと課題のsudden
コマンドを作っていました.
発表資料はこちら.
コードを貼りまくったので,いい感じにシンタックスハイライトしてほしくてgist
にあるMarkdownをスライドにできる,gistdeck
を使ってみた.gistdeck
はこちら.ここで配布されてるブックマークレットをgist
で実行するといいかんじになります.
Haskell のプログラミング手法について
Haskell
ではI/O のようなimpure
な部分とpure
な部分(副作用の無い部分)を明確に分けてコーディングしたほうが綺麗に書ける.そうしたほうが実装も楽だし,テストもかんたん.今回sudden
コマンドを書く上で特に意識はしなかったけど,結果的にそうなってた.
これは他の言語でも言えると思う.Haskell
を書いてテスタブルなコードを書けるようになろう!
この春最もHello, worldな夜にふさわしい課題
Twitterやchatをしている際,「突然の○○」でオチをつけたくなることありませんか? 無い人は今すぐ病院に行くことをオススメします. 「突然の○○」を表示する,suddenコマンドを作ってください.
ぼくは1日に3回くらいしたくなります.完全に欲求ドリブンな課題ですがなかなか楽しめました. この問題の考え方を@ikegami__さんが解説(こちら)してくれました.
ちなみにぼくのsudden
は空白で区切ったら複数出力されます.
> ./sudden.hs 死 Haskell 'Hello, world' _人人人人人人_ > 突然の死 <  ̄Y^Y^Y^Y^Y^ ̄ _人人人人人人人人人_ > 突然のHaskell <  ̄Y^Y^Y^Y^Y^Y^Y^Y^ ̄ _人人人人人人人人人人人_ > 突然のHello, world <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
これでドヤってたら@nushioさんのやつは複数行に対応してて完全に負けました.
(@nushioさんが即興でもっと難しい課題も出題されました.今回はみんなそこまでいけなかったので次回解く予定)
さいこうのスクリプトを公開します
みなさんもこのさいこうのスクリプトでさいこうのユーザ体験を味わってみてください!!!
次回すごいH本読書会#8は9章の残りを扱う予定です.今回同様発表をそこそこに課題の実装時間を多めにとる予定です.開催は 4/8 になります.みなさんこぞって参加しましょう!
- 作者: Miran Lipovača,田中英行,村主崇行
- 出版社/メーカー: オーム社
- 発売日: 2012/05/23
- メディア: 単行本(ソフトカバー)
- 購入: 25人 クリック: 580回
- この商品を含むブログ (44件) を見る
- 作者: Miran Lipovaca
- 出版社/メーカー: オーム社
- 発売日: 2012/09/21
- メディア: Kindle版
- 購入: 4人 クリック: 9回
- この商品を含むブログを見る