elsur.jpn.org >

« 2009年5月 | メイン | 2009年7月 »

2009年6月28日 (日)

Bookcover 政治と秋刀魚 日本と暮らして四五年 [a]
ジェラルド・カーティス / 日経BP社 / 2008-04-17
買ったまま本棚で眠っていたのを,休みの日に本棚を整理していて発掘し,めくってみたらこれが面白くて,そのまま読了。
 著者は自民党議員の選挙運動を参与観察した研究で有名な政治学者。半分くらいは心温まる思い出話なのだが,後半では日本の政治システムについて意外に厳しい批判がなされている。いま必要なのは,政策通の政治家でなく政治通の政治だ,とのこと。
 アメリカの日本研究者を世代で分けると,第一世代は戦前のジャパノロジスト,中国語を習ってから日本研究をはじめた人たちで,たとえばライシャワーなど。宣教師の子弟が多い。第二世代は軍で日本語を覚えてGHQで働いた人たちで,ドナルド・キーン,サイデンステッカーなど。第三世代は好奇心で研究を始めた人で,これがカーチス先生たちなのだそうだ。なお,第四世代には日本脅威論を背景にしたリビジョニストが多く,第五世代は逆に,バブル崩壊以降の日本の政治・経済システムがなぜうまく機能しなくなったかに関心を持つのだそうだ。

ノンフィクション(-2010) - 読了:06/28まで (NF)

2009年6月26日 (金)

Bookcover さよなら、愛しい人 [a]
レイモンド・チャンドラー / 早川書房 / 2009-04-15
大ベストセラーどころか社会的事件と化してしまった「1Q84」を読まずに,同時期に出たチャンドラーの訳書のほうをシミジミと読む今日この頃。まあ,「1Q84」は読もうにも手に入らなかったのだが。
 この本は清水俊二訳「さらば愛しき女よ」として長く親しまれてきたのだが,俺は清水訳で読んだときにどうにも違和感があり,面白い小説だけど,なんだかヘンだなあ。。。という感じであった。その理由はふたつあって,ひとつは,事件に鼻を突っ込むうら若き美女アン・リオーダンが,何考えてんだかよくわからん,という点であった。この村上春樹訳で読み直しても,その点は印象が変わらない。物語に花を添える道具的人物というか,なんというか。チャンドラーの小説の魅力は,話の組み立てのこのようないびつさと切り離せないように思う。
 清水訳に感じたもう一つの違和感はごくつまらないことで,冒頭から登場する大男マロイが「大鹿マロイ」と表記されている点であった。大鹿,というのは彼の通り名で,ムース(ヘラジカ)の訳語なのだが,そもそもなんて読むんだかわからない。オオジカ?オオシカ? それに本文中でたびたび「大鹿マロイ」という文字が出てくると,ほんの一瞬だが,「大馬鹿マロイ」と読み間違えてしまうのである。さいわい,この新訳では「ムース・マロイ」と表記されている。時代が変わったんでしょうね。

フィクション - 読了:06/26まで (F)

Bookcover メディアの支配者(上) (講談社文庫) [a]
中川 一徳 / 講談社 / 2009-06-12
Bookcover メディアの支配者(下) (講談社文庫) [a]
中川 一徳 / 講談社 / 2009-06-12
フジサンケイグループを支配した鹿内家三代の物語。
 すっかり引き込まれてしまい,息つく暇もなく読み終えた。権力闘争の手に汗握るサスペンス,骨肉の争いの下世話な興味深さ,鹿内家が権力を確立するまでの戦後史の壮大な暗部。。。これを面白いといわずになんというか。その後数日間にわたって,頭のなかは鹿内さんたちでいっぱいであった。なにしろ,通勤電車でつり革にぶら下がって揺られているとき,ついつい鹿内宏明さんの数奇な運命について考えてしまい,思わず「ああ,ヒロアキ。。。」などと小声で呟いてしまったほどである。はたからみたら危険なゲイのオヤジである。
 というわけで,文句なしに最近一番の面白本だったのだが,読み終えての最大の感想は,ああ俺は日本について知らない,何も知らないのだなあ,ということに尽きる。世の中は我々の預かり知らぬところで動いているのだ,と痛感する。
 いくつか抜き書き:

Bookcover 世界はカーブ化している グローバル金融はなぜ破綻したか [a]
デビッド・スミック / 徳間書店 / 2009-05-19
題名"The world is curved"はもちろん,フリードマンのベストセラー"The world is flat"を踏まえたもの。金融システムのグローバル化のせいで,世の中はフラットどころか一寸先も闇になってしまったが,でもグローバル化を止めるわけにもいかない,という主旨。。。だったと思う。経済の話は苦手なので,いまいち自信がない。
 堅い話ばっかりじゃまずいだろうというご配慮なのであろう,ところどころ自慢話とも冗談ともつかないような軽いエピソードが紹介されるので,その飛び石をつたうようにしてなんとか読み終えた。著者は超有名な金融コンサルタントなのだそうで,リー・クアンユーと一対一で論争したり,橋本首相をヨットで接待したり,グリーンスパンと始終メシを食ったり,絵に描いたようなインサイダーである。
 グローバリゼーションはどうしたって続けなければならない,そのためにこそ人々を起業家資本主義へと誘い,資本家の裾野を劇的に拡大させなければならない,んだそうだ。ふうん。

Bookcover 貧困ビジネス (幻冬舎新書) [a]
門倉 貴史 / 幻冬舎 / 2009-01
保証人ビジネスからアルバニアのネズミ講まで,表題と関係のありそうな話題を片っ端から集めてきましたという,全くまとまりのない本。失敗した。

Bookcover レバレッジ時間術―ノーリスク・ハイリターンの成功原則 (幻冬舎新書) [a]
本田 直之 / 幻冬舎 / 2007-05
本屋でぼんやりしていると,なんとなく不安がこみあげてきて,ついついこういう本を買ってしまうのである。会計を済ませたその足でコーヒーショップに寄り,袋から出してぱらぱらめくって,30分後に「これはもう読みおえたことにしよう」と決めた。著者様には失礼な話だが,本のテーマがテーマだから,仰るとおり時間を有益に使いました,ということでご容赦願いたいと思う。

Bookcover 多読術 (ちくまプリマー新書) [a]
松岡 正剛 / 筑摩書房 / 2009-04-08
著者は読書家として大変有名な人で,俺もときどきネットの「千夜千冊」を眺めることがあるのだけど,著書には関心がなかった。ところが先般,明け方に見た奇妙な夢のなかで,俺は小川洋子の小説に出てくるような幻想的な書庫のなかで段ボール箱を延々と運んでおり,少しでも箱を雑に扱うと,片眼鏡を掛けたマツオカ・セイゴーが静かに怒り出すのであった。これもなにかのご縁かと思い,最新刊を手に取った次第。
 この本もぱらぱらめくるような感じで読み終えてしまったが,なにしろ題名が「多読術」なんだから,正しい態度であろう。対談形式の薄目の内容で,なかなか楽しかった。主旨はアドラー&ドーレン「本を読む本」とほとんど同じだが,まあ誰が書いても似たような内容になるだろうし。達人のアドバイスを聞いたからといって,我々シモジモの役に立つかどうかはわからないし。

Bookcover 日本の難点 (幻冬舎新書) [a]
宮台 真司 / 幻冬舎 / 2009-04
帯に「ひとりで『日本の論点』をやってみました」とあるように,世の中のありとあらゆる問題について,整理・分析し見解を述べた本。大変忙しい。
 社会科学者がこういう本を書く,その決意は大変なものだろうと思うのだけど,この本を喜んで読んでいていいのか,という気もする。誰かえらい人に包括的な物差しを示してほしいと願うのは,よっぽど実存的不安に脅かされているか,でなければある種の怠慢の表れではないかと思うのである。もう少し,ひとつひとつゆっくり考えたいなあ。

Bookcover パリの聖月曜日―19世紀都市騒乱の舞台裏 (岩波現代文庫) [a]
喜安 朗 / 岩波書店 / 2008-03-14
19世紀初頭のパリは,人口は増大するわ社会は流動化するわ,でも都市を支えるだけの政治システムやインフラが追いつかないわで,もう大変だったのだそうだ。そのなかでの人々の生活について書いた本。
 水不足に関する章がとても面白かった。当時のパリはとにかく水が足りなくて,金持ちでさえ公衆浴場に行くのが習慣であった由(風呂の出前「移動浴槽」や,セーヌ川の船の上に浴室を並べた「風呂舟」といった商売もあったそうだ)。労働者はセーヌ川の水浴場に行くのが関の山であった。で,1825年に運河ができて,パリへの給水量は増大するが,その結果生じたのは公衆浴場の増加であって,格差はかえって拡大したそうである。

ノンフィクション(-2010) - 読了:06/26まで (NF)

Bookcover 大東京トイボックス(4) (バーズコミックス) [a]
うめ / 幻冬舎 / 2009-06-24
ゲーム業界を舞台にした群像劇,4巻目。著者夫婦はたしか出産で連載のスピードを落としていたはずで,どうなるだろうかと思っていたが,変わらずに面白い。
 ゲーム制作の天才を自負する主人公の青年が,「何が面白いのか自分でわからなくなって」迷走するくだり,静かな恐怖感がある。。。別に俺はゲーム開発者でも天才でもないのに妙な話だが,身につまされる,という表現がぴったりだ。

Bookcover レッド(3) (KCデラックス イブニング ) [a]
山本 直樹 / 講談社 / 2009-06-23

Bookcover シアワセ行進曲 (BEAM COMIX) [a]
山川 直人 / エンターブレイン / 2009-05-30

コミックス(-2010) - 読了:06/26まで (C)

2009年6月20日 (土)

今週ずっと悩んでいたことがあった。冷静に考えると,どうでもいいような話なのだが,まあいいや,解決した記念に記録しておこう。

なにか事情があって,コマンドラインで動くプログラムをVBAで呼ばないといけない,としよう。別にIT関係の仕事をしているわけでもないのに,なんでそんなことをしなければならないかは,ちょっと横に置いておく。人生にはいろいろ不条理な事が多いのだ。

いちばん手っ取り早いのはshell関数だ。

Sub Sample()
Shell "hogehoge.exe"
End Sub

という感じだ。

ところが,shell関数は外部プログラムを非同期に実行する。hogehoge.exeがなにをはじめようが,その終了を待たずにつぎの処理に移ってしまうわけだ。VB.NETではどうだかしらんが,少なくともVBAではそのはずである。同期実行したい場合はどうするか? かつてはAPI関数で終了を監視したものだが,最近ではWindows Scripting Hostを使うという手があるのだそうだ。

Sub Sample()
dim oWsh as object
set oWsh=createobject("WScript.Shell")
oWsh.run "hogehoge.exe", , True
set oWsh=nothing
End Sub

テストしてないけど,こんな感じで動くらしい。

そうすると欲が出てきて,こんどはhogehoge.exeになにか標準入力を与えたい,という気分になる。hogehoge.exeを実行すると,「爆発します。よろしいですか? (Y/N)」というプロンプトが出て,Nのキーを押さないとえらいことになる,としよう。RunメソッドのかわりにExecメソッドをつかえば,

Sub Sample()
dim oWsh as object
dim oExec as object
set oWsh=createobject("WScript.Shell")
set oExec=oWsh.Exec("hogehoge.exe")
oExec.StdIn.Writeline("Y")
set oExec=nothing
set oWsh=nothing
End Sub

このように,Stdin.WriteLineメソッドでhogehoge.exeにとっての標準入力を制御できる。ああ,これだと爆発してしまうけど。

さて,本題はここからだ。hogehoge.exeが,標準入力に一行与えると標準出力に数行吐く,また一行与えるとまた一行吐く...というようなプログラムであった場合を考える。なんでもいいけど,たとえばMeCabのようなプログラムである。形態素解析ソフトMeCabは,コマンドラインでこんなふうに対話的に動く。

C:\>mecab               ←入力
さよならだけが ←標準入力
さよなら 感動詞,*,*,*,*,*,さよなら,サヨナラ,サヨナ
だけ 助詞,副助詞,*,*,*,*,だけ,ダケ,ダケ
が 助詞,格助詞,一般,*,*,*,が,ガ,ガ
EOS
人生だ ←標準入力
人生 名詞,一般,*,*,*,*,人生,ジンセイ,ジンセイ
だ 助動詞,*,*,*,特殊・ダ,基本形,だ,ダ,ダ
EOS

コマンドラインでmecab.exeを実行するとすぐに入力待ちになる。一行入れるとどどどと結果を返し(上の例では4行),また入力待ちになる。また一行入れるとどどどと結果を返し(上の例では3行)...CTRL-Zをいれるまで続く。このやりとりをVBAにやらせるにはどうすればよいか?

標準出力ストリームはExecオブジェクトのStdOutプロパティで参照できる。ストリームを一発で読み込むためにreadallというメソッドが用意されている。だから素直に考えれば,

Sub Sample()
dim oWsh as object
dim oExec as object
set oWsh=createobject("WScript.Shell")
set oExec=oWsh.Exec("mecab.exe")
oExec.StdIn.Writeline("さよならだけが")
debug.print oExec.StdOut.readall
oExec.StdIn.Writeline("人生だ")
debug.print oExec.StdOut.readall
set oExec=nothing
set oWsh=nothing
End Sub

ところが,これがうまくいかない。上の例だと,最初のdebug.printでプログラムが止まってしまい,なにも表示されていない黒いウィンドウと向き合う羽目になる。CTRL-Cをいれればウィンドウは消えるが,当然つぎのwritelineでエラーとなる。

あれこれ試してみたところ,どうやらプログラム実行中に標準出力をreadallすると,そこで止まってしまうらしい。しかし,実行中に標準出力が読めないというのはちょっと信じがたい。答えを求めてwebを徘徊し,悩みに悩み,ついにはうんざりして投げ出したが,どうにも気分が悪い。一晩経って気を取り直し,もう一度だけ試してあきらめることにした。

ふと思いついて,標準出力を1行ずつ読んでみると,

  oExec.StdIn.Writeline("さよならだけが")   
Dim i As Integer
For i = 1 To 4
Debug.Print i; oExec.stdout.readline
Next i

なんと,これは動く。ところが,oExec.StdOut.ReadLineをもう一行増やすと,その行で止まる。つまり,4行の標準出力が出ているとき,きっかり4行読む分には問題がないが,5行読もうとすると(ないしreadallで一気に読もうとすると),そこで止まるのである。おそらく,標準出力に5行目が吐かれるのを,じっと待っているのだろう。

不思議で仕方ないのは,AtEndOfStream プロパティを参照するだけでも止まる,という点である。MSDNによれば,AtEndOfStream プロパティには「ストリームの最後に達したかどうかを示すブール値が格納されます」ということだから,4行読むまではfalse, 読んだあとならtrueを返すはずである。だったらこれを門番にして

  oExec.StdIn.Writeline("さよならだけが")   
while not oExec.stdout.AtEndOfStream
Debug.Print oExec.stdout.readline
wend

と書けそうなものだ。実際,こういう例文があっちこっちに載っている。しかし,realineで4行読み尽くした後にAtEndOfStreamを参照すると,trueを返すのではなく,とにかく止まってしまうのである。4行目がほんとにストリームの最後だったのかどうか,様子を見守っているのだろう。どうやら,AtEndOfStreamが使い物になるのは,呼んだプログラムがもう終わってしまっている場合に限るようである。

MeCabの例でいえば,各回の最終行の中身がかならず文字列"EOS"になるので(そのように設定できるので),

  oExec.StdIn.Writeline("さよならだけが")   
dim sLine as string
sLine = vbNullstring
While sLine <> "EOS"
sLine = oExec.stdout.readline
Debug.Print sLine
Wend

というように,"EOS"が出てくるまでreadlineすればよい。今回やりたかったことに限っていえば,このやり方でなんとか解決できた。ほっとしたけど,ちょっと後味が悪い面もある。もし出力の中身から判別できなかったらどうすんのかね。。。

解決した記念に書いてはみたが,読み返してみると,実にどうでもいい話である。なんというか,出世するタイプの人が悩む問題ではないね。

雑記 - ものすごく生産的な話題

2009年6月 8日 (月)

Bookcover エル・スール [a]
アデライダ ガルシア=モラレス / インスクリプト / 2009-02
ビクトル・エリセ監督の映画「エル・スール」の原作小説。映画の印象が崩れたらいやだなあ,と心配していたのだが,杞憂であった。映画とは全然別の物語であった。

フィクション - 読了:06/08まで (F)

Bookcover マンボウ恐妻記 (新潮文庫) [a]
北 杜夫 / 新潮社 / 2004-12-22
なんとなく手に取った。平成13年刊のエッセイ。出てくる人出てくる人,みんな故人で,存命なのは佐藤愛子くらい。なんだか胸が沈んでしまった。
 俺はいまいち集中力に欠けるところがあって,個人全集を全部読んだといえるのは北杜夫と須賀敦子くらいだ。その北杜夫にしたところで,中学校の図書室にあった新潮社版・北杜夫全集は,いま調べたら77年刊らしいから,以後の作品は全く読んでいないことになる。よい読者とは言い難い。
 「楡家」は別格として,いちばん好きなのは「白きたおやかな峰」なのだが,著者の回想によれば,これは躁の時期に書かれた失敗作なのだそうだ。良い小説だと思うんだけどなあ。

Bookcover 独断流「読書」必勝法 (講談社文庫) [a]
清水 義範,西原 理恵子 / 講談社 / 2009-05-15
これは別に読まなくてもよい本であった。。。

Bookcover 失われた場を探して──ロストジェネレーションの社会学 [a]
メアリー・C・ブリントン / エヌティティ出版 / 2008-11-28
日本の高卒就職についての実証研究。著者は日本研究で有名な社会学者とのこと。
 それほど親しいわけではない知人とのつながりが社会関係資本としては馬鹿にできないのだ,という文脈で,そういった中遠距離の関係のことを「ウィークタイズ」と呼ぶことがあるようだが,これはマーク・グラノヴェターという社会学者の論文から来ている言葉なのだそうだ。で,著者によれば,若者の職探しでウィークタイズが効くというのはアメリカの話であり,日本ではむしろストロングタイズや制度的ネットワーク(学校推薦とか)のほうが重要である由。ふうん。

Bookcover 農民も土も水も悲惨な中国農業 (朝日新書) [a]
高橋 五郎 / 朝日新聞出版 / 2009-02-13

Bookcover 上海新風―路地裏から見た経済成長 [a]
谷口 智彦 / 中央公論新社 / 2006-09
著者が上海に数ヶ月滞在した経験をつづったエッセイ。
 かつてはこういう本があったよなあ,と思う。著者は別に中国経済が専門でもなければ,中国語ができるわけでもない。このような極私的見聞録が出版されるのは,ただ著者が高名な著述家であるという一点にかかっているのだ。それはそれで面白い内容ではあったけれども,海外情報がアタリマエとなってしまった昨今では,珍しいタイプの本だなあ,と思った。

ノンフィクション(-2010) - 読了:06/08まで (NF)

Bookcover OL進化論(29) (ワイドKC モーニング) [a]
秋月 りす / 講談社 / 2009-05-22
著者は連載開始以来20年にわたって,このハイ・クオリティを維持し続けているのである。同じアイデアを使い回しているときさえ,まったく陳腐さを感じさせない。すごいなあ。

Bookcover カラスヤサトシ(4) (アフタヌーンKC) [a]
カラスヤ サトシ / 講談社 / 2009-05-22

Bookcover とりぱん(7) (ワイドKC モーニング) [a]
とりの なん子 / 講談社 / 2009-05-22

Bookcover ドロヘドロ 13 (BIC COMICS IKKI) [a]
林田 球 / 小学館 / 2009-05-29

Bookcover ぼく、オタリーマン。4 [a]
よしたに / 中経出版 / 2009-05-30
累計100万部突破だそうだ。そんなに売れていたとは。

Bookcover コーヒーもう一杯 V (BEAM COMIX) [a]
山川 直人 / エンターブレイン / 2009-05-30

コミックス(-2010) - 読了:06/08まで (C)

« 2009年5月 | メイン | 2009年7月 »

rebuilt: 2020年11月16日 22:48
validate this page