« 2012年10月 | トップページ | 2012年12月 »

2012年11月25日 (日)

[本] 手にしたけど、買わなかったミステリーベスト100

週刊文春臨時増刊 東西ミステリー ベスト100 2013年 1月4日号

ぱらぱらとベスト100の顔ぶれを眺めてみたら、あまり、目新しいのが無さそうだったので、パス。 オールタイムベストだから、そんなに変わらないのか。

それはさておき、もう2013年なのか。

| | コメント (0) | トラックバック (0)

2012年11月24日 (土)

[日記] Black Friday のクーポン

Black Friday の Black って「黒字」が由来らしい。 アメリカでは、この日から、クリスマス商戦スタートって感じなのかな。

Black Friday のクーポンが送られてきたので、しっかり踊らされて、またPragmatic Bookshelfで買い物をしてしまった。 思う壺。(だって40%Offですよ!奥さん!)

| | コメント (0) | トラックバック (0)

2012年11月16日 (金)

[本] Without DRM software applied な電子書籍

The Quantum Thief (Hannu Rajaniemi)

量子怪盗 (ハンヌ・ライアニエミ) の原書。

ROOMの次に読む本の候補の1つに挙げていた本。SF版アルセーヌ・ルパンらしい。

で、洋書のKindle版の方をよくよく見たら

At the publisher's request, this title is being sold 
without Digital Rights Management software (DRM) applied.

て書かれている。これっていわゆるDRMフリーってこと?

英語でSFを理解できるのかどうか心許ないのだけど、 なんか気になったし、アルセーヌ・ルパンってだけでわくわくするので購入。

と思ったら、アメリカアマゾンの The Quantum Thief には DRMのくだりがない...。

ちなみに翻訳は紙の本です。電子書籍ではありません。

| | コメント (0) | トラックバック (0)

[本] 久々にミステリーじゃない小説を読んだ

ROOM (Emma Donoghue)

部屋』(エマ・ドナヒュー)の原書。

ミステリーマガジンかなんかで紹介されていたので、てっきりミステリーかと思って読むことにしたのだが、ミステリーじゃなかった。

実は、Kindle本を読む前にオーディオブックでこの話を数回繰り返して聞いていた。内容は完全に理解できてはいなかったけど、楽しく聞いた。

普通(?)のオーディオブックだと朗読者は一人なのだが、このオーディオブックは違っていた。豪華キャストなのである。主人公の5歳の子供の声はちゃんと子役が担当していて母親の声は女性が担当している。男性の登場人物の台詞は男性が担当している。

物語の語り手は5歳の子供で、この子役が何ともいい味を出しているのである。内容は酷い話なのだが、子役の語りを聞いているだけで楽しかった。

なので、今回は、オーディオブックで大ざっぱなストーリーは把握して、詳細な内容を本で読んでカバーする感じだった。

主人公のJackが5歳の誕生日を向かえるところから物語は始まる。母と子のほのぼのとした生活がJackの視点で描かれていくのだが、この母と子のおかれた環境がだんだん異様であることがわかってくる。しかも、子供は生まれたときからこの環境以外の世界のことを知らない。

そしてJackの大活躍(!)により、この異様な環境から脱出するまでが前半。後半は、異様な環境しか知らなかった5歳のJackが、脱出後の普通の世界のことを知っていく過程が描かれる。

大きな感動もしなかったし、良く考えれば(考えなくても)酷い話なんだけど、5歳の子供の視点で描かれているためかユーモアがあり、地味に面白かった。

| | コメント (0) | トラックバック (0)

2012年11月 9日 (金)

[Ruby] Win32OLEのキーワード引数(じゃなくってそれっぽく見えるもの)

Ruby 2.0ではキーワード引数がサポートされている。

で、Win32OLE では何かしたかというと今のところ何もしていない。 1.9のときと全く同じ。

次のようなoletest.rbを用意しておいて、Ruby 1.9 と Ruby 2.0 での動作を比較してみた。

require 'win32ole'
puts RUBY_DESCRIPTION
dict = WIN32OLE.new('Scripting.Dictionary')
dict.add(Key:'A', Item:'apple')
dict.add(ITEM:'banana', KEY:'B')
dict.add(key:'C', item:'cherry')
puts dict["A"]
puts dict["B"]
puts dict["C"]

実行結果は次の通り。

$ c:/usr/ruby2.0pre1/bin/ruby oletest.rb
ruby 2.0.0dev (2012-11-01 trunk 37411) [i386-mswin32_100]
apple
banana
cherry
 
$ c:/usr/ruby193p286/bin/ruby oletest.rb
ruby 1.9.3p286 (2012-10-12 revision 37165) [i386-mswin32_100]
apple
banana
cherry

これは、キーワード引数じゃなくて、

Ruby では
1. Hashのキーがシンボルのときには、
     {:key => 'A'}
  を
     {key:'A'}
  と書くことができる。
2. メソッド呼び出しのときに、最後の引数がHashの場合は、{} を省略できる。

さらに

Win32OLE では
最後の引数がHashのときは、OLEの名前付き引数として扱う。
(Hashのキーが引数の名前、Hashの値が引数の値)
このとき、Hashのキーに使うことができるのはStringかSymbolである。
(Win32OLEの中でSymbolは文字列に変換している。)

ということになっているためである。

dict.add({'Key' => 'A', 'Item' => 'apple'})

は、Win32OLEでは、HashのキーにSymbolを使えることから

dict.add({:Key => 'A', :Item => 'apple'})

と書くことができ、Hash のキーがSymbolのときは

dict.add({Key:'A', Item:'apple'})

と書くことができ、最後の引数がHashのときは

dict.add(Key:'A', Item:'apple')

と書くことができ、キーワード引数っぽく見えているのである。

ちなみにRuby のキーワード引数は、キーワードに大文字で始まるキーワードを指定できないっぽい。 まあ、そりゃそうだろうな。

| | コメント (0) | トラックバック (0)

2012年11月 5日 (月)

[Linux] 結局 i3 に落ち着いた

scrotwm を1週間ほど使ってみたが、その後、すぐにi3 に戻してしまった。

scrotwm の方がとっつきやすかったのだが、i3 の方が、Windowの配置をいろいろ変更できるみたいだったから。 今だに操作には慣れないし、もしかしたら、一生、慣れないかも知れないけど、まあ、いいや。

| | コメント (0) | トラックバック (0)

« 2012年10月 | トップページ | 2012年12月 »