相変わらず継続

継続のあたりをうろうろしてますが、先週末に到着したOn Lispの継続の章をつまみ読みしてまたちょっと理解がすすんだような気がしたようなしないような。

ProductName On Lisp
ポール グレアム
オーム社 / 3990円 ( 2007-03 )


最後の方で、

継続

CPS変換を覚えればcall/ccを書くのは簡単だ. CPS変換を経たプログラムでは,全体に対する現在の継続が常に存在し, call/ccはその引数として何らかの関数を呼び出す単純なマクロとして実装できる.

と書いてあるのだが、perl - to goto or not to goto, that's the continuationの先にどうやればperlでcall/ccが実装できるのかわからん。

rubyにはcall/ccがあるらしいですね

そもそもCall/CCがrubyに実装されている理由はただ一つで、「実装できてしまったから」である。

先週読んだ本

フリーター論争

対談集

ProductName フリーター論争2.0―フリーターズフリー対談集

人文書院 / ¥ 1,680 ()
通常24時間以内に発送

右とか左とかそういう話はちょっと苦手なのでそこらへんの対談は流したのだけど、富士通本の著者の対談は面白かった。まぁ、マクロに眺めててもあんま役に立たないんだけども、いま置かれてる状況を客観的に考えられるのはよいな。

コミュニティカフェをつくろう

ProductName コミュニティ・カフェをつくろう!

学陽書房 / ¥ 1,890 ()
通常24時間以内に発送

想定してたのとはかなり違ってボランティアとかそっちの。

グーグル

ProductName グーグル―Google 既存のビジネスを破壊する 文春新書 (501)
佐々木 俊尚
文藝春秋 / ¥ 798 ()
通常24時間以内に発送

ブックオフ100円本。

lispでスパムフィルタの実装 (実践Common Lisp 23章)

単語の特徴を表すクラスを作って、ベイジアンフィルタを実装していく。

ProductName 実践Common Lisp
Peter Seibel
オーム社 / ¥ 4,410 ()
通常24時間以内に発送

  • print-unreadable-objectを使うと印字方法を変えられる。pythonでいう__str__メソッドみたいなものか。
  • caseとecaseの違いがわからん
  • reduceは:keyを受ける

最後のヤツは対数の総和をとるのに

(reduce #'+ probs :key #'log)
# reduce(lambda x,y:log(x)+log(y),list) ;python

こんな風に書くことが出来る。

実践Common Lisp 18-22章

format,例外処理,package,LOOPあたり

ProductName 実践Common Lisp
Peter Seibel
オーム社 / ¥ 4,410 ()
通常24時間以内に発送

ちまちま読んでてあまり頭に入らないのでざっと目を通して脳内インデックスを作っておく感じで眺めた。理解する必要が生じた場合に戻ってきて読めばいいのだろう。

これ以降はすべて実践の章で面白そうな内容ばかり。特に次の章はlispで作るベイジアンフィルタだ。

イーモバ来た

たまに外でノート使うのにイーモバ欲しいと書いたら、EMチャージがお薦めとのことだったので、検討してみた->即買いという流れで、大体5日で使えるようになった。以前検討した時にEMチャージだと端末代が割高な気がしたのであんま調べずにやめてしまったのだけど、アウトレットのD02HWだとお買い得感があるね。

一緒にくっついてくる10K円分のチャージは一日定額で15回分ぐらいだけど、チャージが無効になる3ヶ月の間には使うでしょう。そこそこ余っててても2K分リチャージしとけばいいみたいだし。

早速、近くのカフェまで出て来てエントリを書いてみているが、このカフェの二階はタバコ臭くて嫌いだ(かといって一階は落ち着かないしなぁ)

「金持ち父さんの起業する前に読む本」を読んだ

ジョブとワークの違いやマインドセットとか、起業家的な精神について。

ProductName 金持ち父さんの起業する前に読む本 -ビッグビジネスで成功するための10のレッスン
ロバート・キヨサキ,シャロン・レクター
筑摩書房 / ¥ 1,995 ()
通常24時間以内に発送

ビジネス本みたいに気軽に読むには辛かった。くどくて飽きる部分も結構あった。金持ち父さんシリーズはブックオフで安く買えるのでいいね。

モダンPerl入門

予約した

ProductName モダンPerl入門 (CodeZine BOOKS)
牧 大輔
翔泳社 / 2940円 ( 2009-02-10 )


数日前にどうしようかなぁと悩んでたんだけど、内容みたらすごく欲しくなった。

macbookでsbcl+asdf(asdf-install)

asdf(日本語)とはperlでいうところのCPANみたいなものらしい。

でもってperl互換な正規表現ライブラリのcl-ppcreをインストールしてみる。

ちなみに毎回asdfをrequireするのは面倒なので.sbclrcに

(require 'asdf)

って一行入れてある。

asdf-installはgpgを使っているのでここを参考にして設定した。

で、インストールはsbclを起動して

(require 'asdf-install)
(asdf-install:install 'cl-ppcre)

って打つだけ。おーなんかcpanみたいで気持ちいい。

インストールできたら実際に使ってみる。どう書く?の税込み価格への修正をやってみた。asdfだとloadの仕方がちょっと違うみたい。

* (asdf:operate 'asdf:load-op 'cl-ppcre)

NIL
* (defun including-tax (string)
  (cl-ppcre:regex-replace-all
   "\\d+" string
   (lambda (num) (format nil "~a" (floor (* (parse-integer num) 1.05))))
   :simple-calls t))

INCLUDING-TAX
* (including-tax "ダイコン150円、ハクサイ120円、ジャガイモ30円")

"ダイコン157円、ハクサイ125円、ジャガイモ31円"
T

感激!

さて、loadする時にasdf:operateって書いてあったりasdf:oosって書いてあったりして違いがわからなかったのだけど、oos is a synonym for operateなんだそうだ。


パッケージを見てたらperl-in-lispというものを見つけた。おもしろそうなのであとで触る。

あとpython-on-lispというものもあるらしい。

不確実性のマネジメント 新薬創出のR&Dの「解」を読んだ

最初のほうは製薬業界のヒトだったらまぁ普通に知っていることだが、

  • 第3章 医薬品開発における競争優位の源泉は何か?
  • 第4章 優れた製品開発マネジメントの産業間比較

の二つの章は特に面白かった。出版が2006年で、規模メリットが必ずしもいいわけではないという筆者の主張は、最近のメガファーマはリストラが多いという今の状況を割と反映しているのかなぁ。

ProductName 不確実性のマネジメント 新薬創出のR&Dの「解」
桑嶋 健一
日経BP社 / ¥ 1,680 ()
通常24時間以内に発送

結局、持続可能性を求めるならば、競争優位の源泉を良く考えて、それに特化したスモールビジネスのほうがいいのかなぁなんて最近強く思う。dryの分野なんて水平化したほうがいいだろうしなぁ。

ProductName Eric Sink on the Business of Software 革新的ソフトウェア企業の作り方
Eric Sink,エリック・シンク
翔泳社 / ¥ 2,940 ()
通常24時間以内に発送

というあたりも考えながら今年を過ごしていく。

妙見ですっぽん

新年早々、みなみ妙見ですっぽんをいただく。

寒さがきつくて、黒龍の燗からはいって、落ち着いたところで、初亀と雪中梅。ナマコとアンキモが美味い。

1231934791 1231934802

お造りと、サラダ。ホヤの臭みがなくて美味しい。

1231934795 1231934800

スッポン鍋は久しぶり。プルプルの食感がたまらん。残ったスープはもちろん雑炊に。鍋がスッポンの形。

1231934797 1231934793

1231934804

満足。