2010-05-01から1ヶ月間の記事一覧

:module +Text.Regex.Posix

環境 Ubuntu 9.10 GHCi 6.10.4 問題 Real World Haskell の P.202 に ghci> :module +Text.Regex.Posix と書いてあるが、実行してみると Prelude> :module +Text.Regex.Posix.String Could not find module `Text.Regex.Posix.String': Use -v to see a list…

リダイレクトでは入力できない、そんなふうに考えていた時期が俺にもありました

というか、忘れていただけなんだけど。 ファイルの内容をプログラムに渡そうとするときに、よく使うのがパイプ。個人的によく使う。 % cat input.txt | sort 今日、人の作業を見ていたらリダイレクトで入力していた。ああ、そういえばそんなのあったなー、な…

初めての MongoDB

MongoDB が気になったのでちょっと試してみた。なぜ MongoDB が気になったのかというと、Heroku の Add-ons で MongoHQ が使えるということなので。 Heroku 上で動作させることを前提としているので、言語は Ruby を使用。http://www.mongodb.org/display/DO…

パックマン

Google のロゴがパックマンになって、しかもそれが実際に遊べたので、驚いたのだが。Flash かと思いきや Javascript, CSS, HTML で作られていることに、さらに驚いた。バンダイナムコ公認らしいので、モンスターがパックマンを追跡するアルゴリズムも同じな…

PHPアプリケーションを高速化

PHP

みんな大好き高速化。 このところ仕事でPHPアプリの性能を改善に取り組んできたので、覚えている範囲で記録しておく。WebサーバやDBサーバ等のチューニングの話はなし。小ネタ多し。 環境 CentOS 5.4 PHP 5.2.11 やったこと コードキャッシュ APC とか eAcce…

OAuth対応

以前公開した hashtagle を OAuth に対応させた。 といっても、メインの機能は Streaming API を使っていて、そちらの方はまだ Basic 認証のまま。1 時間あたりのツイート回数が多かったハッシュタグのトップ 3 をツイートする機能の方を OAuth 対応させた。…

affected rows

MySQL で UPDATE 文を実行したときに、マッチした行の数と実際に更新処理がされる行の数は一致しない。 ということを知らずにいて一時間ほどさまよってた。 UPDATE 文が作用した行数が 1 以上であれば、すでにテーブルにはレコードがあり、そのレコードが更…

Real World Haskell 4.6 練習問題

練習問題を解いてみた。

Real World Haskell 4.5 練習問題

久しぶりに Haskell。Real World Haskell の本を買ったはいいがなかなか進まない。まだ 4章。 問1 Maybe型で返すのはいいけど、返されたMaybe型の値をどう扱えばいいかまだわかっていない。 safeHead xs = if null xs then Nothing else Just (head xs) safe…