[本] Code Reading (Diomidis Spinellis)
最後の章があたかもミステリを読んでいるようで、面白かった。
Code Reading というタイトルでありながら、
最後は、いかにコードを読まずに、
効率良く既存のコードを改定するかという姿勢になっているところが面白い。
| 固定リンク
| コメント (0)
| トラックバック (0)
最後の章があたかもミステリを読んでいるようで、面白かった。
Code Reading というタイトルでありながら、
最後は、いかにコードを読まずに、
効率良く既存のコードを改定するかという姿勢になっているところが面白い。
| 固定リンク
| コメント (0)
| トラックバック (0)
先の読めないスリリングな展開で読ませるが、最後があっけない。
追い詰められたヴィンスがどたん場で、機転をきかせて、
一発逆転していたら、傑作だったのに。
曲者ぞろいの登場人物が入り乱れるさまは、
ロス・トーマスやエルモア・レナードなんかを彷彿とさせるだけに、惜しい。
思うに作者はミステリを書こうという意識は薄かったのかも知れない。
体裁としてはミステリなんだけど、たまたま、そうなってしまっただけで、
他に描きたいことがあったんじゃないかと思ったりする。
| 固定リンク
| コメント (0)
| トラックバック (0)
単なるサイコ・サスペンスかと思いきや、
合理的な動機が存在するミステリ。
犯人の設定には、完全に意表を突かれた。
真相は結構複雑で、本格ミステリにも敗けてない。
| 固定リンク
| コメント (0)
| トラックバック (0)
ext/win32ole/sample/olegen.rb が出力するスクリプトのコメントを rdocに
対応させる。
| 固定リンク
| コメント (0)
| トラックバック (0)
WIN32OLE_VARIANTで、VT_ARRAYのときだけは、配列なので、
[]メソッドと[]=メソッドが使えるようになっている。
実装方法としては、
VT_ARRAYのときだけ、WIN32OLE_VARIANTオブジェクトの
シングルトンメソッドとして定義。
WIN32OLE_VARIANTのインスタンスメソッドとして定義しておいて、VT_ARRAY
以外のときは、NoMethodError などの例外を raise する。
最初から、VT_ARRAYとそれ以外でクラスを分ける。
などを考えた。
試しに、trunkでは、1.を採用してみたのだけど、2. の方が
WIN32OLE_VARINAT.instance_methods
としたときにメソッドの存在がわかるので、ユーザーに優しくて良いかも。
1. はRubyっぽくなくてJavaScriptっぽいかもしれない。
| 固定リンク
| コメント (0)
| トラックバック (0)
あまり、不便なのもどうかと思ったので、
WIN32OLE_VARIANTの値の変更は、できるようにした。
あと、
VT_ARRAYのときは、Array並みに機能てんこもりにするとか、
WIN32OLE_VARIANTオブジェクトの演算をできるようにするとか、
Variant Type を動的に変更できるようにするとか、
いろいろ、考えられる機能はある。
なんだけど、便利になって、WIN32OLE_VARIANTばかり使われるようになるのもどうかと思うので、
今のところ、これらの機能の実装については保留。
どうしても必要だとか、こういう場合に便利だから欲しいとか、
要望があったときに改めて考えることにする。
| 固定リンク
| コメント (0)
| トラックバック (0)
とうとう、バージョンが、0.9.9になってしまった。
どんな修正でも、0.0.1を加えて、バージョンをアップする方針でやってきた。
次の修正で、1.0.0になる。
1.0.0というと、世間一般では、安定版ということになるんだろうが、
Win32OLEに関しては、単なる通過点に過ぎず、
100回手を加えたことを意味するだけだということを前もって
おことわりしておく。
ダメ?
| 固定リンク
| コメント (0)
| トラックバック (0)
今まで、mplayerをインストールして使っていたが、
Vine標準のソフトを利用する方針に従い、Totemを使うことにした。
apt-get install totem-xine
して、wmaも聴けるようにした。
| 固定リンク
| コメント (1)
| トラックバック (0)
一人の恐喝者をじわじわと追いつめる素人探偵。
犯人と探偵の頭脳戦ではなくどちらかというと心理サスペンス的な要素が強い。
どんでん返しもなく、起伏に富んだストーリー展開もなく地味な作品。
新訳のはずなのに、こなれていないような日本語も気になった。
| 固定リンク
| コメント (0)
| トラックバック (0)
X上でSKKを使いたくなったので、インストール。
どれをインストールすればいいのかわからなかったのだが、
scimが標準でインストールされているので、
apt-get install uim-skk
apt-get install scim-uim
とした。
ついでにT-code での入力もできるようになった。
混ぜ書き変換の方法がわからないので、T-code初心者の私には使えそうにない。
uim-trycodeというものもあるんだが、これって何だろう。
| 固定リンク
| コメント (0)
| トラックバック (0)
自前でのインストールは、極力避ける方針にしたので、
apt-get install tc-el
でインストール。
Ctrl+\でT-Codeに切り替わらなかった。
.emacs.my.el に次の二行を追加。
(setq tcode-use-as-default-input-method t)
(require 'tc-setup)
| 固定リンク
| コメント (0)
| トラックバック (0)
ここには書いてなかったが、実はYAHTを読み終えた。
だが、モナドについては、理解できていないままである。
モナドの解説を読んだときの収穫は、mapM の存在を知ったこと。
map putStr ["a", "b", "c"]
とやりたいときがあるけど、エラーになるので、悩んだことがあった。
mapM putStr ["a", "b", "c"]
を使えばいいことを知った。
(余談だけど、Googleで "Haskell mapM" で検索すると、
"もしかして Haskell map?" と質問してくるのには苦笑してしまった。)
YAHTを読んで、再帰呼出の考え方がすんなりできるようになった気がする。
Win32OLEのソースでも再帰を使っているところがあるが、
Haskellだとこんな感じになりそうだなと考えながら書いた部分がある。
数日前に、今度は、SICPを読むことに決めて読み始めた。
英語の勉強も兼ねてWebで公開されている原書の方に挑戦中。
現在、1.1.6を読み終わったところ。
| 固定リンク
| コメント (0)
| トラックバック (0)
WIN32OLE_VARIANT関連を少し修正。
[ruby-talk:237516]を意識して、
include WIN32OLE::VARIANT
obj = WIN32OLE_VARIANT.new(nil,
VT_ARRAY|VT_DISPATCH|VT_BYREF)
というのをありにした。
VARTYPEは設定するけど、SAFEARRAY領域は確保しない。
VBScript の
Dim ary()
と雰囲気だけ近いようなイメージ。
(実際には VBScript は、VT_VARIANT|VT_BYREFで渡す(参照渡し)ので、
同じではない。)
| 固定リンク
| コメント (0)
| トラックバック (0)
ある日、猫のたくさんいる猫島でナイフの突き立った人間の死体ならぬ
猫の死体・・・じゃなくて猫の剥製が見つかる。
葉崎近辺を舞台にしたコージー・ミステリ・シリーズの1つ。
とはいっても、ちゃんと、独立した作品になっているので、
前作を読んでいなくても楽しめる。
別の作品で登場した人物が、ちらりと顔を覗かせたりしているので、
シリーズを通じて読んでいる人には、より楽しめる作品に仕上がっている。
うっかり、いかにもコージーという感じの雰囲気を楽しんでいると
終盤の意外と複雑なプロットには圧倒されてしまう作品。
| 固定リンク
| コメント (0)
| トラックバック (0)
1.8.xには追加するつもりはないんだけど、まずは、
ole_query_interface
を手元に取り込んで試してみようと思う。
| 固定リンク
| コメント (0)
| トラックバック (0)
最近のコメント