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

ポイントフリースタイル入門

Haskell にはポイントフリースタイルというのがあります。 例えば foo x = f (g x) という中の x というのが「ポイント」と言うらしいです(型を明示していないから x の型が a->b だったりする可能性もあるけどその可能性は置いといて)。要するに値のこと…

モナドとモナド変換子のイメージを描いてみた

最初に言っておくと、モナドって何なの?っていう答えは一切ないです。 自分にとってモナドは「とりあえず型さえ合わせておけば何かいろいろしてくれる奴」程度としか認識できていないので、そんな説明できないです。 で、そんな自分が脳内でどういう風にイ…

Data.Aeson が便利すぎる件

JSON を扱うライブラリで一番簡単に見つかるのは Text.JSON ですが、しばらく使ってると、あまりの使いにくさに発狂しそうでした。 ということで他のを探した結果、Data.Aeson というのがかなりよさげだったので、これを使うことにしました。 しばらく使って…

第4回 ZABBIX-JP勉強会に行ってきた

2011/10/22_第4回 ZABBIX-JP勉強会( #zabbix_jp ) - Togetter 今日は全力でログ取ってみました。 ラトビアの生活と Zabbix 2.0 ラトビアで生活 半年ぶりに帰ってきた 質問:ラトビア行ったことある人 会場にいない ラトビア:ロシアを挟んで隣の隣。近いですね…

昔読めなかった Haskell のコードを解読してみた

968 デフォルトの名無しさん [sage] 2011/03/02(水) 20:59:11.07 ID: Be: 先生宿題のクイックソートができました q[]=[] q(x:xs)=arr (List.partition(<x))>>>first q >>> second q>>>arr((((((((((((((app .).).(&&&))(((app .).).(&&&)) (const id)).).).).)((f</x))>…

FibBuzz を Control.Arrow で解いてみた

何か FizzBuzz 問題をちょっとだけパワーアップさせたものに FibBuzz とかいうのがあるそうで、0 から 100 までの整数を FizzBuzz する代わりにフィボナッチ数の各項に対して FizzBuzz する問題なようです。 面白そうなので久々に Control.Arrow を引っ張り…

foldr のすごさを体験してみた

Real World Haskell にはこんなコードが載ってます。 myFoldl :: (a -> b -> a) -> a -> [b] -> a myFoldl f z xs = foldr step id xs z where step x g a = g (f a x) Real World Haskell p100 4.6.8 右からの畳み込み foldl は foldr を使って書けるという…

GCJJ 予選に参加してみた

x86/64 最適化勉強会中に、iPad からリモートで家の PC に接続して、そこでやってました。 GCJJ に集中しすぎて勉強会の方を全然聞けなかったっていう・・・ほんとすみません。 ということで A と C が解けました。 B は満足度優先で探してたのですが、それだけ…