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

動物占い

動物占い®Premium やってみました。「黒ヒョウ」でした。 永遠のスタイリスト俊敏な黒ヒョウのようにスマートであることを大事にしているあなた。メンツやプライドにこだわり、リーダーシップを取りたがります。しかもオシャレで新しもの好き。最新の情報・…

Stateモナドの練習

与えた文字列を数字と解釈して、その和を状態として計算するプログラムを書いてみました。状態遷移がモナドで繋ってて、初期値を与えるとそれがフィックスする感じかな。 module Main (main) where import Control.Monad.State add :: String -> State Int S…

今から帰ります。

関数の引数の順番

Haskellで関数の引数の順番を考えるときには、一番変更するであろう引数を一番最後にするのがよいように思います(関数をカリー化して高階関数に渡す場合を考えると…)。 例えば、文字列を左詰めにして返す関数を考えてみます。ljustは文字列、幅の順番で、lju…

Red Pony, The(13,800語)

*RED PONY PGRN4 (Penguin Readers (Graded Readers))作者: John Steinbeck出版社/メーカー: Longman発売日: 2001/05/08メディア: ペーパーバックこの商品を含むブログ (1件) を見る主人公の少年の父がよかったです。厳格で家のことは何でも決めているような…

今から帰ります。

caseの途中にwhereが書ける

id:ha-tan:20070107:1168212959の続きのようなものですが、caseの途中にwhereが書けるのですね。これも知りませんでした。 module Main (main) where main :: IO () main = do case lookup 1 [(1, "aaa"), (2, "bbb")] of Just x -> func x -- => "aaa" wher…

第6回 局所的な「状態」を利用するためのStateモナド | 日経 xTECH(クロステック)

でてます。まだStateモナドって使ったことないので参考になりそうです。読まねば…

19:30ごろ帰りました。仕事始めでした。休みが長かったせいか集中力が続かないな。ほどほどで帰りました。

狐罠

狐罠 (講談社文庫)作者: 北森鴻出版社/メーカー: 講談社発売日: 2000/05/12メディア: 文庫購入: 4人 クリック: 8回この商品を含むブログ (60件) を見るid:ha-tan:20070105:1168010981の続きみたいなものですが、読み始めました。22:00過ぎから。いや面白くて…

Cinnamon-0.2のリリーススケジュール

上記2点の変更を含めて、Cinnamon-0.2を今週末くらいにまとめたいなーと思っています。ucs4ToUtf8のバグはすでにCVSに登録済みですので、お急ぎの方はそちらを使ってください。

CinnamonにRubyの文字列操作関数を取り込みました

CinnamonにRubyの文字列操作関数を取り込みました。テストコードがあるので楽でした。 Cinnamon/RubyString.hs test/TestRubyString.hs 取り込む際に以下の点を変更しています。 インデント、変数の命名などは、元々のCinnamonプロジェクトのソースコードと…

Cinnamonのucs4ToUtf8にバグがありました

Cinnamonのucs4ToUtf8にバグがありました。ASCIIの範囲で文字化けします。もー、ショック死しそうorz 何でソコ、テストサボったのかと小一時間… Diff fo Cinnamon/Ucs.hs between version 1.4 and 1.5 参照: cinnamon プロジェクト日本語トップページ - OSDN

letでパターンマッチ

同じく。letでパターンマッチできたのですね。これも知りませんでしたorz module Main (main) where main :: IO () main = do let (x : xs) = func 10 print x -- => 1 print xs -- => [2,3,4,5,6,7,8,9,10] where func n = [1 .. n]

letで関数定義

letで関数定義できたのですね。知りませんでした。というか規格まともに読んでません… うーむ、読まねば。 module Main (main) where main :: IO () main = do let func :: Int -> Int -> Int -> Int func a b c = a + b + c print $ func 1 2 3 -- => 6

RHODIA#11用に「スワンタッチ」買った

三宮の東急ハンズで「スワンタッチ」を買いました。こんなやつです。RHODIA#11につけて使おうと思います。 RHODIA(ロディア)専用のしおり「スワンタッチ」で「GTD + R」を強化する (eXtreme Gadget (エクストリーム ガジェット) ポケットに入るアジャイルな…

正しいコードの巻き方(動画)

正しいコードの巻き方(動画) | ギズモード・ジャパン おお、これは!! いや僕もからんでからんで困っていたのですよ。後で試してみようと思います。

こもぞうさんちにお邪魔しました

正月に親戚からいただいた本物の焼き海苔を持って、こもぞうさんちにお邪魔しました。炭でできた釜の電子ジャー(実売7万円くらい?)で炊いたご飯と一緒に食べました。確かに高級なジャーで炊いたご飯はおいしいような気がします。

Rubyの文字列操作関数

最近id:desumasuさんがRubyの文字列操作関数をHaskellに移植してくれています。僕はRubyもHaskellも使うので、とても素晴しく思っています。これらの関数群をCinnamonにも取り込みたいなぁ。ソースコードのライセンスはどうなっているのでしょう? http://d.…

神戸に戻ってきました

いつも通り青春18切符です。今回は乗り換えがスムーズで、電車に乗っていたのは4時間半くらいでした。

凶笑面

凶笑面 蓮丈那智フィールドファイル? (新潮文庫)作者: 北森鴻出版社/メーカー: 新潮社発売日: 2003/01/29メディア: 文庫購入: 2人 クリック: 12回この商品を含むブログ (107件) を見る神戸に向かう電車の中で読了。 民俗学のバックグラウンドがないので楽し…

浜松市楽器博物館

地元の友人と浜松市楽器博物館に行ってきました。僕はここに行ったのたぶん2回目かな? 楽器博物館ができた当初に行ってそれ以来かも。 民族楽器って何故か楽器に人の顔が付いていることが多くてちょっと不気味でした。特にアフリカとか東南アジアとか儀式で…

ページビュー20万達成

してました。いつもいつもありがとうございます。

Cinnamon-0.1リリース

Cinnamon-0.1をリリースしました。ここからダウンロードしてください。 主な機能は以下の通りです。 NKFのHaskellバインディング。 UCS4⇔UTF8変換。 BASE64、CRC32、ROT13。 配列の二分探索。 その他ユーティリティ関数。 Cabal化していますので、おきまりの…

最近のHaskell国際化事情

僕はGHC6.6しか使ってないので他はよくわかりませんが、よくまとまっていると思います。メモメモ。 関数型プログラミング言語Haskell Part6より 412 :デフォルトの名無しさん :2007/01/02(火) 17:48:11 この問題はややこしいし、よく出てくるから、テンプ…

Round the World in Eighty Days(34,000語)

*ROUND THE WORLD IN 80 DAYS PGRN5 (Penguin Reading Lab, Level 5)作者: Jules Verne出版社/メーカー: Pearson ESL発売日: 2000/02/15メディア: ペーパーバック クリック: 1回この商品を含むブログ (2件) を見る今だったら飛行機でピューっと一周だろうけ…

浜松散策

地元の友人と数年ぶりに再会。いっしょに市内を散策しました。数年ぶりだったので結構知らないお店がいっぱい。あれー、谷島屋ってこんな小さなお店だっけ? 最後はアクトシティのサゴー浪漫館で鯵をいただきました。久しぶりに学生時代を思い出したり。まっ…

UCS4⇔UTF8の変換

CinnamonにUCS4⇔UTF8の変換を行う関数を追加しました。id:ha-tan:20070101:1167710733のUNFと組合せることで、EUCとかShift-JISとかUTF8とかの文字列をUCS4(Haskellの内部文字コード)の文字列に変換することができます。 Cinnamon/Ucs.hs test/TestUcs.hs つ…

文字列の両端の空白を削除する関数

RubyでいうところのString#stripです。何も考えずに素直に実装するとこうなりました。何とかreverseを消したいところ。うーむ。 module Main (main) where import Data.Char (isSpace) strip :: String -> String strip = stripR . stripL where stripL = dr…

帰省しています

年末の日記はそのうち補完します。