トップ 最新 追記

日々の破片

Subscribe with livedoor Reader
著作一覧

2014-11-01

_ メトのマクベス

東劇でMetライブビューイングのマクベス。

初期ヴェルディだからズンタカッタッタズンタカッタッタで前奏が始まる(中期でも同じだ)のだが、ネトレプコがとんでもないとんでもない。

演出の切れの良さ(場面転換のスピードがすごい)もあるだろうが、とにかく1幕目の要所要所にネトレプコが出てきて歌うだけでどんなヴェルディよりもすごい作品に思えてしまうほどのすごさで、録音技師ががんばった結果なのかも知れないけど、大合唱の中でもネトレプコの声がはっきりと聴こえてくる。

それよりも、乾杯の歌を最初喜びの中で、次にバンコーの亡霊に怯えるマクベスに対する憤懣の中で、完璧に歌い分けている(動きまでがらりと変わる)恐ろしさ。だから実はこのメロディ的にもとりたてておもしろくも無い長い曲が圧倒的にすごい歌として聴ける。それにしても2回目の乾杯の歌が本気でおっかなくて、びっくりした。

休憩後の幕は、愛国賛歌(初期ヴェルディっぽい)からマクダフの妻と子供を殺されて悲しい悲しいのきれいだけどおもしろくもないアリアのあたりでだれたあと、いよいよおかしくなったマクベス夫人が椅子の上をふらふらしたり何か振り子みたいなものをいじっくたりするのだが、ここも圧巻。

キンリーサイドのやつをDVDで買って観て、なんかぱっとしない曲だなぁと思ったが、認識を新たにした。というか、歌手の良さということだけかも知れない。

Macbeth [DVD] [Import](Keenlyside/Monastryrska/Lloyd)

舞台はレジスタンス風のスコットランド軍。第一次世界大戦あたり。最後、マルカム率いる軍勢は緑の旗を振り回しているけどスコットランドの旗はマクベスの頃はそうだったのか、そうとは思えないので、マフノーの農民反乱軍(緑軍ではあるけれど旗は黒旗なような気が)かイスラム革命(カダフィ大佐のやつとか)かとかあれこれ考えてみたが、まあ違うだろうなぁ。

いつも混乱するのだが、マクダフはバンクォーやマクベスと同じ、ダンカン王の家臣で、最後マクベスに対して王座奪還を仕掛けるマルコムはダンカンの息子。魔女の予言するバンクォーの子孫が王座につくのは、この物語の中ではなくさらに未来(で、そこが混乱の元になるうえに、頭がマの字の連中が跋扈するのでわかりにくい)。

いつも、最初のところで、もしもマクベスが野心を抱かなければ、ネスカフェの広告に出てきた紳士はマクベスの子孫だったのかなぁとか思う(コーダの領主を拝領するわけだからだ)。

コーヒー ネスカフェ ゴールドブレンド 90g


2014-11-03

_ 予期するな、待機せよ

ひどいエラー処理のJavaプログラムの大群を目の前にしてうんざりしまくっている。
int fooBar(...) {
  try {
    ...
    ...(なんかたくさん)
  } catch (SQLException e) {
    log("クラスFooのFooBarでSQLExceptionになったよ。" + e.getMessage());
    log("パラメータは" + param1 + "," + param2 ... + "だった");
    ...
    return DEFINED_COMMON_DB_EXCEPTION;
  } catch (Exception e) {
    log("クラスFooのfooBarでExceptionになったよ。" + e.getMessage());
    ...
    return FAILED;
  }
  return SUCCESS;
}

戻り値でエラーかどうかを判別させるのは設計の問題だからどうでも良い。問題は、ログがまったく役に立たないことだ。

なぜ役に立たないかと言えば、このプログラムを書いた人はきっとSQLに自信がないか、またはSQLのために与えられた引数に問題があってSQLで失敗すると予期していることにある。

予期するのであれば、あらかじめ引数をチェックすれば良い。

SQLに自信がないのであれば、まさにテストをちゃんとしておけば良い。

そして、実際、そのようにコードされていたりする。

かくして、fooBarが山ほどログを吐くのだが、すべて"クラスFooのfooBarでExceptionになったよ。null"だったりする。

何が起きているかさっぱりわからねぇ。(DBが落ちているときだけは最初のcathcのログからわかるけど)

よほどへまな奴でなければ、予期しているようなエラーは運用時には起きない(ネットワークとかIOがらみのものは除く)。起きるのは、考えてもいなかったことだ。だから例外なのだ。

したがってどこで例外になるのか、それがどんな例外なのかだってわかるはずがない。何よりも重要なのは例外の種類(Java SEの典型的な例外はgetMessage()にnullを返すことすらある)と、スタックトレース、つまりWhatとWhere(When)だ。

catch (Exception e) {
  StringWriter sw = new StringWriter();
  e.printStackTrace(new PrintWriter(sw, true)); // autoflushって使えるのかな?(普段はPrintWriterのインスタンスを変数に入れてcloseを呼ぶようにしているのでわからない)
  log("例外になった。" + e.toString() + "\r\n" + sw.toString());
  ...
}

ちゃんちゃん。


2014-11-04

_ 藤原歌劇団のラボエーム

オーチャードホールで藤原歌劇団のラボエーム。

フリットリがミミを歌うということしか知らずに行って、最初ルドルフォが声量といい歌い方といい、あまり日本人のテノールっぽくないなぁと思いながら聴いていると、生きているのですのスタンザの次あたりで失敗したりしていて、まあそんなものかなぁとか思いながら、しかしフリットリの声もそれほど響かず、オーチャードホールって演劇にも使うからあまり響かないようにした作りなんだろうか、歌劇には向かないなぁとか考える。

それはそれとしてオーケストラの演奏はうまいのだが、しかしテンポが異様に遅く感じるというか、遅い。特に1幕の蝋燭借りにミミが来たあたりからえらく遅い。

2幕と3幕の幕間に子供とそんな話をしていたら、ルドルフォは日本人の歌手ではなくイタリア人の歌手(フィリィアノーティ)で、しかもおれは皇帝ティートで聴いたことがあると指摘されて驚く。それにしてはわざわざ招聘するほどあまりうまいとは思わなかったからだ。

それにしても、と子供が言う。ムゼッタの小川里美という人の声はちゃんと響くよね。

後になって考えてみると、というのは3幕でルドルフォがマルチェッロにミミは温室の花なんだと述懐するところで出をしくじったからなのだが、指揮者のテンポがイタリア人歌手陣のリズムに合っていないということなのかも知れない。

合わないテンポなのに練習をそれほどできなかったとしたら(一方日本人の歌手陣は同じ日本のことだからより緊密に練習できるとして)、そりゃ合わせるのに手いっぱいで本領発揮はできないだろうなぁと、そういう可能性もあるから舞台芸術ってのはなかなか難しいものだとつくづく思った。

舞台装置はうまく作られていて(2幕に至ってはメトではないが2階建てになっている)、小型軽量化されているらしく場面転換の入れ替えは早く、しかもきれいだ。が、いささか狭いのか良く物をテーブルから落とす。……やはりリハーサル不足なんじゃないかなぁ。

と、あらはあらあらだが、そうは言っても好きな曲だけに楽しめた。


2014-11-06

_ 郵便局と蛇

イギリスの20世紀初頭の短編作家の作品集。

とても奇妙だ。ハートレーに影響を受けたということだが、そうかも。サキのように辛辣ではないが、リアリズムと幻想小説の中間にある。

表題作はまるで神話。だが下世話。なんとなく秋田県あたりの伝説にありそうな内容だ。

冒頭の虎のヌイグルミに入ってライオンと戦うことになった男の心理小説の唖然とする展開(これは有名らしい)。傑作だと思うのだが、妙に下世話。

非常に静謐な幽霊譚(ただしヘンリージェームズみたいに曖昧ではある)のポリー・モーガン。これは本当に見事な佳作と思う。しかし妙に下世話である。

アラベスク―鼠は異様な傑作(妙に想像力を刺激される)

その一方でうすのろサイモンとか王女と太鼓とか、どう考えても駄作というか駄作未満というかひどい代物もあり、しかし本当に駄作なのかどうなのか謎めいてもいて、結局奇妙、の一言になったり。

教養なき労働者がそれでも作家(というか文筆家)になりたくていろいろ努力した結果、無事作家として世に出ることに成功するという巻末のコッパード自伝の要約が実におもしろい。

まったく波瀾万丈ではないのだが(単に仕事について首になって、仕事について首になって、恋人の親父に殴られてそれでも結婚して、引っ越して文通して、仕事についてやめて、引っ越して文芸サークルに入り浸って、仕事についてやめてと、20世紀初頭のイギリス人の労働者階級の暮らしが続くだけで要するに下世話なエピソードには事欠かないのだがそれだけで何か高級なことが起きるわけではない。のだが、おもしろい)それが作風に影響していないわけがない。

妙に高踏的でありながら下世話で、詩的でありながら散漫なまでに散文的、洞察しているようで表面的、しかし時々ほかではみられないはっとする陰影があったり(特にポリー・モーガンは素晴らしいし、冒頭の銀色のサーカスも悪くない)、実に奇妙な読書体験だった。

郵便局と蛇: A・E・コッパード短篇集 (ちくま文庫)(A.E. コッパード/Alfred Edgar Coppard/西崎 憲)

元は国書刊行会から出された幻想小説集の1冊だったらしい。


2014-11-08

_ チャイナ・ナイン

現在の中国の集団指導体制について解説し、今後30年くらいの中期的政治的傾向を予測した本。実におもしろかった。残念なのはKindle版は2012年時点の版(胡錦濤体制)で、本物の書籍だと2013年か2014年に加筆した習近平体制のものになっているらしい。

河端さんがなんか紹介していたので読んだ。モチベーションとしては天安門事件くらいまでの中国の歴史を知っているが、それ以降のことはほとんど知らんなぁというところ。

本書では現在の中国を次のように規定するところから始まる。

改革開放による資本の蓄積がある程度まで到達したので富の再分配への移行期である(というか、まともな国家であれば社会主義だろうが資本主義だろうがそうする。新自由主義が異常、つまりまともではないだけのことだ)。

現在の中国は改革開放の途中とは言え、あまりに貧富の差がついた。そのため、今後は富の再分配へ比重がかかるはずだし、また、そうでなければならない。

次に政治体制について分析する。改革開放においては、進取が必要であり、柔軟な情勢への対応が必要である。個人指導体制や硬直化しやすい長老支配では問題がある。そのために用意されているのが、中央政治局常務委員会(2012年当時は9人)つまりチャイナ・ナインだ。最高権力はこの9人の派閥の人数比によって決まる。構成人員が奇数である点が重要だ。これにより強い派閥が5名以上を占めて大きなブレが生じないようにする。しかし常に強い派閥が勝つわけでは無い。情勢に応じて寝返りがあったり、フェアなメンバーがいたりするためだ。なお、今は7人に減っている(人数が多い方が調整に時間がかかるからだろう)。また、定年制を導入することで最大2期までしかいられないようにしている。かつ、主席はこのメンバーから選出することになるため、構成者の多数の指示を得られないものが主席について混乱を生じさせることを防ぐ。

まあ、自民党みたいだなぁと読んでいて、ある意味、日本の55年体制(現在の自民党は多様性を相当失ってごみむしのようになっているわけだが)に近いものを感じる。このあたりがアジア的政治の王道なのだろう。

9人のうち、2人は少数民族や辺境などの特殊な観点用のポジションで、残りが真っ向勝負となる。現在の派閥は上海閥(拝金主義)と団派(中国共産主義青年団出身者、なんか民青みたいなものなのか?)で、これを縦糸として、太子党(2代目)とそれ以外という切り分けもある(が、おそらく太子党かどうかはほとんど重要ではない)。

傾向としては上海閥が自由(市場)で、団派が平等(再分配)。

すでにGDPで2位まで上ったこともあり、むしろ国内の階級矛盾が無視できないほどの状況となっているので、今後はますます団派が力を持つだろう(というか、上海閥というのは長期的な派閥とは成りえないと読んでいて考える。それって地方閥+人脈であって政治指向ではないよな。おそらくスマートで金をうまく稼げて子分を集めることができるその時々の大物がこの傾向の役回りを担うのだろう。いずれにしても再分配が行き過ぎると社会の活力が削がれるのでそのときはまたバランスを変えることになるがそれが上海かどうかは別の話だ)。

最後の章は、おまけのようだが、筆者が新京(長春)で経験した地獄について。

日本軍が逃げて日本人も相当逃げたのだが、筆者の父親は薬品の技術者だったため退去を許されなかった。その後、一時的に解放軍の支配下におかれ相当明るい展望を持てたのだが、国民党支配となり事情が暗転する。国民党はカイロ会議でうまいこと認めさせた縄張りを主張したいというただその一点で(つまり現実的な実効支配力などとは無関係に蒋介石の面子のために)新京を支配下に置く。それに対して解放軍は包囲戦を取る。結果的にそれは兵糧攻めなので飢餓が新京を襲う。筆者の弟も餓死する。最終的に筆者の家族は新京からの退去を許される。が、そこで待っていたのはDMZへの留め置きだった。毛沢東の指示によって、新京からの避難民を流入させないようになっていたのだ。新京以上の飢餓がそこにあり、あたり一面を死体が野ざらしとなっている。その後、結局は筆者の家族は共産党支配地域へ迎えられるのだが、そこで父親が天ちゃんと呼ぶのを拒絶して査問にかけられたりとかいろいろあったりしながらも、最終的に日本へ帰還するまでが語られる。(天ちゃんというのは実にくだらないが、なんか徳球(あたりの発案のように思う)のユーモアのような気もしないでもない。いずれにしろ無教養な連中に対する言葉を使った洗脳の解除としては役に立ったのだろうと想像できるけど、教養ある人間にとってはばかばかしい子供だましなので筆者の父親には許せなかったのだろう)

というわけで、筆者は自分と家族が舐めさせられた辛酸が中国人民の解放に向けた過渡期の痛みなのかそうでないのか、中国の今後の進む道を見届けたいという強い思いがあるのだと結ぶ。これには、大局的にものを見る(自分の立場を人類の歴史の中に置いて考えられる)実に立派な人だなと感動せざるを得ない。

チャイナ・ナイン(遠藤 誉)

-富の蓄積期といえば、最初の社会主義国であったソ連のNEPやブハーリンを想起するのだが、蓄積が農業だったところにいろいろな悲劇があったが、それが工業なのは分配期には相当有利だと思える。


2014-11-09

_ サメを観に葛西臨海水族園

ミツクリザメ(ゴブリンシャーク)が葛西臨海水族園にやってきたということで、観に行った(11/8)。今までの最長飼育記録が14日間で、2日に搬入ということは急がねばならぬというわけで、とりあえずすぐ行く。

(ずっと葛西臨海水族館だと思っていたら、水族園なんだな。箱ものではないという意味なんだろうか? というか、動物園は動物園なのに、なぜ水族館は水族館なんだろう?)

幻のサメを探せ~秘境 東京海底谷~ [DVD](ドキュメンタリー)

(たまたまこの番組観てたのでそれは興味もしんしんだ)

最後に葛西臨海水族園行ったのは子供が小学生のころだから随分と前のことだ。

久々の水族館なので、魚のいない水族館、誰も来ない日曜日と口ずさみながら相当楽しい。

淋しいおさかな (PHP文庫)(別役 実)

(魚のいない水族館、誰も来ない日曜日、というフレーズと舞台の情景(おっさんと少女が腰かけている情景)が耳と目に残っていて黒テントっぽいのだが、別役実は黒テントではないよなぁ?)

で、ぐるんぐるん回り続けるマグロを横目にとりあえず深海魚コーナーへ行くと、さっそくスマホで撮影している人が数人いる水槽を見つける。大して混んでないからじっくり見られる。

タカアシガニが考える人よろしく左奥の岩の上に腰をおろして、時々一番上の鋏っぽいので口をほじっているのが目立つ。というか、水槽の前に子供が来ると、まずは、わーでっかいカニーと騒ぐのが楽しい。

当たり前だが、ミツクリザメが飯を食うわけではないので、口の中から口が飛び出すところは見られるわけではなく(いや、なんとなく想像していたのでがっかりしないわけでもない)、しかし、常に裏側を外側へ向けて水槽の中を回遊しているから、向うへ行くと、小さい丸い目と四角くて平たい先端の妙に可愛いアヒルのお化けみたいなのが見えて、手前に来ると、ところがどっこい鋭い歯があまり噛み合わせの良くなさそうで隙間があいた口の周囲に見えて、しかも向うに折りたたまれているっぽい内側が見えるようで、ほおここからあれが出てくるのかと興味深い。というか、エイもそうだが、表側というか上から見た場合に想像する口の位置と、裏側から見た場合の口の位置の差の違いがおもしろい。

目が小さいし、深海は暗いから、獲物を確実にとらえるところを目で見られるように飛び出す口になったのかなぁ。

隣の水槽の太刀魚が鮮烈に銀色で美しい。縦に並んでいるので立ち魚なのかと一瞬思ったが、それはそれとしてこんなにきれいな魚だとは思わなかった(見たことあるはずなのに忘れている)。鱗がすごく細かい(のか無いのか。なんか鱗粉みたいな感じだと焼いた姿を思い出してみたり)からかな。

でペンギンは何度見ても楽しい。見ていると、次々と子供がやって来ては、ぺんちゃーんぺんちゃーん、とか叫んだり、フェアリーペンギンのところで、子供だよ、子供だよ、と叫んだりして、実にほほえましい。ぺんぎんみたいだ。

フンボルトペンギンは群れて泳いでいて、大群で行ったり来たりするのが実におもしろい。

餌やりの時間になったので観ていると、水槽にばんばん魚を放り投げてフンボルトペンギンに食わせている。イワトビペンギンは飼育員を取り囲むだけだ。で、フェアリーペンギンのほうへ行って、実はこれは子供のペンギンではなくて、と解説が入って少し食べさせたあと、あまり人目のあるところでは食べないので後でやるのだ、と解説する。イワトビペンギンは水の中でやろうとするとフンボルトペンギンに横取りされるので、これも後からやるのだが、それを知っているのでぴょんぴょん跳びながらついてくるのでそこに注目と言いながら去っていく。後をぴょんぴょんイワトビペンギンがその通りについていく(ハメルンの笛吹き状態)。

それとは別にオウサマペンギンがのこのこと餌やり風景を見物に来ては去っていく(これも別にやるらしい)。

妙な生き物たちだなぁ。

その他。

マグロの背中にサバみたいな模様のあるやつがいて、サバにしては丸すぎて妙だなぁと思った(マグロなのだが)。

初めて鶴のいるほうに行ってみた(以前もあったのだろうか?)。鶴がすぐ近くまでやって来てでかさに驚く。ダチョウみたいだな。さらに進むと淡水魚館があって、これも記憶にないのだが、トウキョウサンショウウオとかを眺めながら最後にカジカの声(録音)を聴いて出た。


2014-11-11

_ Javaエンジニア養成読本

どこの誰かは知らないけれどJavaエンジニア養成読本をくださったので読んだ。

うまい。特に構成が。網羅性も。そして読みやすさだ。

こんな人に勧める。

普通にJavaを知っているが、Java8のストリームAPIについてはまだ知らない人。おれおれ。3部が簡潔にうまくまとまっていて、これ読むだけで十分だ(もしかするとおれはC#のLINQを知っているからかも知れないが、それでも問題ないんじゃないかな)。

これからJavaでコードをまじめに書く人。おれは2部を書いた人と意見が合わない点がたくさんあるが、それでもスタンダードに悪くない。やはり簡潔に必要だと思えることが網羅されていた。

Javaでしばらく食おうと思っている人。1部にきしださんがまじめなんだかふまじめなんだかよくわからないJavaの周辺情報(歴史とかカルチャーとか)を書いているのでこれの最後のところが役に立つと思う。

技術系の軽い読み物が好きな人。同じく1部。

4部のJavaEEのところはさすがにカタログ的に網羅するしかないからこんなものだろうなぁ。網羅性は高いからその意味では良いと思う。

5部(ちょっと部番号が前後しているかも)の開発の周辺を固めるソフトウェア、環境の特集も役に立ちそうだ。多分、2004年ごろにぶいぶい言わせて今はもう少し上に行った人とかだと、CIツールとかをすっ飛ばしているかも知れないから読むべき価値がある。

6部にいがぴょんさんがきわめて異質なことを書いていて、なんともどんより感がある。が、このどんより感が重要そうな気がする(20代前半の、この部のターゲットになっているエンタープライズ系の人たちには)。

端的にはフレームワークに呼び出されるメソッドの内側にトランザクションスクリプトを記述するお仕事なんだからデザインパターンやモデリングとか余分なことはしないほうが良いです。ということなのだが、おれは逆に考えたなぁ。トランザクションスクリプトで済ませられる単純な箇所だからいかようにでも記述できて、好き勝手にいろいろな機能や書き方を試してもまったく問題なしってわけだ。要は正しく動けば良いのだよ。でも、まあそれは人それぞれだ。ここに書いてあるのは効率良い仕事術かも知れない。し、裏や表やいろいろな方向から物事を見られるようになることこそ重要だから、実に良い記事でもある。

Javaエンジニア養成読本 [現場で役立つ最新知識、満載!] (Software Design plus)(きしだ なおき/のざき ひろふみ/吉田 真也/菊田 洋一/渡辺 修司/伊賀 敏樹)

というわけでおもしろかった。ムックの読みやすさというのをなんか痛感した(おそらく執筆陣の書き方も良いのだ)。

本日のツッコミ(全2件) [ツッコミを入れる]

_ いがぴょん [書籍を紹介してくださって、ありがとうございます! 渾身の力をこめて「どんより感」を書いてみた! そして、私にとっての..]

_ arton [インフラとしてのソフトウェアは、どんよりしちゃうのは、おそらく土管や下水管みたく、いろんなものがこびりつくからだよね..]


2014-11-15

_ メトのフィガロの結婚

東劇でメトの新演出(リチャードエア)のフィガロの結婚のライブビューイングを観る。

正直モーツァルトは好きではないのでやめようかと思ったが、なんとなく行ってしまった(というのは、フィガロのアブロダザコフというアブラカダブラみたいなバリトンが、前回のイーゴリ公で実に良い歌手だなぁと思ったからだった。

結果的には素晴らしいものだった。生まれて初めて最初から最後まで通してフィガロの結婚を楽しめたし、なるほどモーツァルトは(転調の)天才であるなぁと実感した(歌手の表現も良いのだ)。

おそらくまず第一にジェームズレヴァインが良いのだ。緩急自在。あまりモーツァルトらしくない分厚いオーケストラの響き、それが実に見事で、楽団を掌握しきるということはこういうことなのだろうなぁと感じる。しかもそれが妙な緊張感を持つものではなく、実に楽し気だ。

レナードのケルビーノがまた素晴らしい。にゃんちゅうみたいな顔のアルマヴィーヴァ伯爵も悪くない。

いろいろ考えると、結局はレヴァインとエアの二人が作った演出の妙というものなのかも知れない。回転舞台をうまく利用することで場面転換の速度を極限までに高めている。それが良いテンポを産む。全般的に速度は早めなのだが、ケルビーノの歌など部分部分でゆったりとしたテンポを取る。3幕と4幕の間がほとんどお休みなしに続く。

舞台は1930年代、貴族社会の死滅期におく。衣裳と舞台装置が良い味を出していた。

フィガロのバトラーらしい服と、伯爵という言葉が耳に残って、なんかヘルシングを読み直したくなり(しかし実物本は人にあげてしまったので)、Kindleで買い直して読み直してみたり。

HELLSING(9) (ヤングキングコミックス)(平野耕太)

(実物の本だとカバー裏か、紙のほうの表紙だかに何かあったような記憶があるのだが、Kindle版では欠けている(無いのであれば問題ないけど))


2014-11-20

_ Effective Ruby

早くもアマゾンに書影が出ているので、広告します。

来年早々に、翔泳社からピーター・J・ジョーンズ(僕は知らない人なんですが)のEffective Rubyの翻訳が出ます。

翻訳は安定と安心のロングテール長尾さん、僕が監訳しています。

当然、全部読んだのですが、これは相当お勧めです。

Effective Ruby あなたのRubyをより輝かせる48の特別な方法(Peter J. Jones/arton/長尾 高弘)

Effectiveと銘うっているだけに、どう使うべきか、どう使うべきでないか、といったことが大雑把な章立ての下に並んでいます。コードはほとんどが断片(irbを使って動かせるようにはなっている。当然、僕は全部試したけど(2.1と2.2プレビュー)。とはいえ、最後のほうではpryを使えと言い出しますが、基本はRubyのコア、添付ライブラリが優先)で、試せるようになっています。

ただ、特にテストの章がおもしろいので実際に打ち込んで(当然irbというわけには行かないので独立したファイルにするわけで、ここで原著から逸脱する)みると、行数節約のためだと思うけど自明な元クラスの読み込みとかを省略していたりして当然動かないので、そのへんは気持ちとして訳注で補ったりしました(が、そういうのがすべて残るかどうかは紙数の関係があるので別問題)。

最初の章が「Rubyに身体を慣らす」と題してRubyっぽい、でも慣れないと驚き最大の法則みたいな点で肩慣らし。まずはCを知っているほどひっかかるtrueについて。0はfalseではない問題(問題ではなく仕様だけど)ですね。そして、Perlを知っていれば余裕なところをやめろと切り捨てる。といった感じ。

2章がクラス、モジュール、オブジェクト。書き方がこなれているからか、Rubyの特異な特異点もみんなが使い始めて15年、その前合わせて20年以上の歴史があるからか、やたらとわかりやすいです。

この章を読んでStructが好きになった。あと、僕は@@大好きなんだけど、@@ではなくクラスのインスタンス変数を使うべきと説得されました。

3章はコレクション。著者はreduce(injectは好きではないらしい)がとにかく好きらしいのだけど、いろいろ参考になった。その他ハッシュのデフォルト値とか、いろいろためになる良い章。

4章は例外。さすがにここはおれにはいらないなぁとか読んでいたけど、raiseではなくthrowを使うというのは、知らなかった。

5章がメタプログラミング。

とにかく著者はevalが大嫌いで、いかにevalやmethod_missingせずにメタプログラミングするかを説明してくれる。prependとか最近のメソッドについても参考になる。この章はメタプログラミングRubyとは違った意味で良い章だった。

6章がテスト。おれはtest/unitで止まっているので、なかなか参考になる。この章をチェックしているまさにその時に、ククログにRubyのテスティングフレームワークの歴史(2014年版)(直しました。ありがとうございます。)が掲載されたので参考になりました。ククログありがとう。

この章はどこまでカタカナにしてどこまでを漢字+カタカナ(単体テストか、ユニットテストか、ユニットテスティングか、といったこと)、どこまでテスティングとしてどこまでをテストとするか、と監訳し甲斐があるというか、なかなか難しい章でもある(読者にはあまり関係ない)。基本、アジャイル文脈までのテストはテスティングとカタカナと切り分けてみたけど、それでも文句がある人は文句あるんだろうなぁとかは思います。

7章がツールとライブラリ。rdocはともかく、bundleとgemのバージョン指定とか、寝っ転がって読める書籍で要領よく説明してあるので良いと思った。というか、参考になった。

8章がメモリ管理とパフォーマンス。プロファイラの使い方(種類と)が重要だけど、2.1のGC制御変数の使い方も興味深い(2.2のエデンを管理する変数は現時点ではないみたいなので、しばらくは現役で使えると思う、今の時点では)。あとはメモ化とかループ内リテラルの重さとか、知っていればお得な情報とか。

特にプロファイラの項はたかだか7ページ(Effectiveシリーズっぽく、1項あたりは短い)だけど要領よく書いてあるので、実際に書いてある通りに試して起動方法と見方さえ覚えれば後は応用できると思うし、実際に利用すべきなので良い項だと思います。

その他。

著者はわりと昔ながらのOOPの人っぽくて、すぐにオブジェクトへメッセージを送るんだけど、ここはちょっと考えた。でもオブジェクトのメソッドを呼び出すとせずに、気分として著者がメッセージを送ると感じたところをメッセージパッシングとして書いているのだろうから、そこは全部生かしています。ここも人によっては文句あるだろうなぁとは思いますが原著者の意思尊重。

一方、原著者の好みらしい言い回しが2個ほど出てくるのだけど(具体例は書かないけど、たとえば日本語の「ここはラインマーカーだ」みたいな文)それは普通の言い回しに変えました(上の例だと「ここは重要だ」みたいに)。

というわけで、結構Rubyを使ってわかっているつもりでも知らない(Structを使わなくても困らないから使っていなかったけど、なるほど確かに使ったほうが良い点が多いといったことを学べるとか。同様なことはコレクションの章にも強く言える)ことが見つかったり、reduceとか(今風な名前)実に参考になりました。しかも読んでいておもしろかった。1項あたりの短さから来る読ませるテンポが良いみたいです(長尾さんの訳に対する好き嫌いってのもあるだろうからそこは個人差はあるだろうけど)。

お勧めします。

追記:この著者はevalが嫌いなだけでなく、モンキーパッチも大嫌いらしく、いかにフックを使うかとかエイリアスメソッドチェインを使うかを力説していて、これもきっとEffectiveだと思います。だいたいMacOSのジャンプテーブルのパッチのことを書いたりしているから、著者は相当なベテランっぽい。というわけで、Refinements一押しだったりして、なるほどRefinementsはこう使うのかとわかったり(僕はモンキーパッチ+オープンクラス大好きだからね)。

本日のツッコミ(全1件) [ツッコミを入れる]

_ kou [ククログの記事のURLは http://www.clear-code.com/blog/2014/11/6.html..]


2014-11-23

_ どちらでもいい、なぜなら同じことだからだ

妻が図書館からアゴタクリストフの短編集を借りて来たので読んだ。

おう文学だ。

1970年から1990年ごろにノートに書かれた拾遺集とあとがきにはあり(読んでいるときはそれは知らなかったが)、すべてが断片的な言葉の切れ端であり、起承転結といった意味での物語性があるものはごく一部だ(冒頭の斧というのはその珍しい例だ)。

読んでいていやでも感ずるのは、そこにある徹底した冷たさというか無関心さである。語り手がある場合、それはいつも傍観者でありそこで起きていることが仮に自分についてのことであってもまったく関わりなく感じている。

情熱的に何かが語られる作品はただひとつ『街路』という、街路と建物を眺めることだけに人生の意義を見出す音楽家の一生を描いた作品だけだ。そこで主人公は音楽学校へ通うために後にした生まれ育った街の街路を思い出して、同級生が辟易するほどの感傷的な音楽を演奏する。そして故郷へ戻り、街路を愛して一生を終わらせる。素晴らしい作品である。

『ホームディナー』という妻の誕生日を祝う男とその妻を描いた作品も傑作だ。それは誕生日のパーティーという特殊な日常ではなく、すべてにおいてそのように生きているために、最後妻は鏡の中を自分を見る。

幾つかはあまりに断片的であるが、唐突に『田園』のような一種の寓話が語られることもある。都会の喧騒を逃れて田舎へ越した男の家の近くに高速道路が通り、開発されて喧騒にまみれる。そのころ後にしてきた都会の集合住宅の回りでは環境保全が計られるようになって静謐が戻っていたというお話。もし、全編にわたってこのての単に気が利いた話が収録されていたらつまらない作品集になっていただろう(とは言え、訳者のものかも知れないがやはり傍観者としての語り口がきついため、どうしようもなくこの作者独自の味わいはある)。

と感じるということは、この作家の作品におれが期待しているのは、むしろ『街路』や『母親』(4年前に家を出た息子がきれいな恋人を連れて家へ帰る。母親は彼らの世話を焼く。息子が不在のときは二人で食事を摂るが母親が息子のことを褒めると恋人は常に立ち去る)のような、誰も誰にも興味を持たず、ただただ個人がばらばらに存在しているだけのありようを描いた作品群のようだ。また、そういった作品ほど美しい。

どちらでもいい(アゴタ クリストフ/Agota Kristof/堀 茂樹)

というわけで、読後にはこの世界に対する違和感に包まれて実に気分が悪い。だが、それが文学の力というものなのだった。


2014-11-29

_ Rubyが使い物にならないこと

正確には、あまり考えずに使うと実は使えないことがあるということだ。

さて、ゾルタン・コチシュはハンガリーのピアニストだ。

おれのディスクにはゾルタン・コチシュのMP3(アマゾンで買った)が入っている。

C:\Users\arton\Music\Amazon MP3>dir
 ドライブ C のボリューム ラベルがありません。
 ボリューム シリアル番号は E0D4-CC67 です
 
 C:\Users\arton\Music\Amazon MP3 のディレクトリ
 
2014/10/21  22:22    <DIR>          .
2014/10/21  22:22    <DIR>          ..
(snip)
2014/04/15  20:31    <DIR>          Vladimir Krainev, Dmitri Kitaenko & Radio-Si
nfonie-Orchester Frankfurt
2014/04/15  20:35    <DIR>          Zoltán Kocsis
               0 個のファイル                   0 バイト

このディレクトリで次のRubyのプログラムを動かしてみよう。

ruby  -e 'p ARGV' *

すると次の結果が得られる。

["Allison Cornell", (snip) "Vladimir Krainev, Dmitri Kitaenko & Radio-Sinfonie-Orchester Frankfurt", "Zoltan Kocsis"]

はてZoltanのaの上が少し寂しいようだ。ちゃんと読めているのだろうか?

そこで次のように変えて、最後にあるコチシュのディレクトリをFileとしてみてみよう。

ruby  -e 'p ARGV; p File.new(ARGV.last)' *

実行すると

["Allison Cornell", (snip) "Vladimir Krainev, Dmitri Kitaenko & Radio-Sinfonie-Orchester Frankfurt", "Zoltan Kocsis"]
-e:1:in `initialize': No such file or directory @ rb_sysopen - Zoltan Kocsis (Er
rno::ENOENT)
        from -e:1:in `new'
        from -e:1:in `
'

本来はErrno::EISDIRになるはず

これは、コマンドラインの取り込みが現在の環境(上だとdirの出力からわかるように、日本語環境(CP932))に基づいて行われているのが原因だ。その結果、ハンガリー語のaの上にアクセンテギュ(ハンガリー語で何と呼ぶかは知らない)が付いた文字はCP932には無いため、ARGV内の文字列に変換する過程で化けてしまう。

解決するには、とりあえずコマンドラインに*を使って取り込むのはあきらめて、プログラム内でutf-8にした*でglobすれば良い。

ruby -e 'a=Dir.glob("*".force_encoding("UTF-8")); p a; File.new(a.last)'

これを実行すると次のように出力される。

["Allison Cornell", (snip) "Vladimir Krainev, Dmitri Kitaenko & Radio-Sinfonie-Orchester Frankfurt", "Zolt\u00E1n Kocsis"]
-e:1:in `initialize': Is a directory @ rb_sysopen - Zoltテ。n Kocsis (Errno::EISDI
R)
        from -e:1:in `new'
        from -e:1:in `
'

例外がErrno::EISDIRに変わったことから、正しくファイル名が取れていることがわかる。aの部分は\u00E1としてUnicodeで取り込まれている。

\u00E1がaアクセンテギュかどうかを見るにはpをputsに変えてみる。(-Kuを付ければpのままでも表示される。CP932で動いているためpを使うと表現できない文字はエスケープされたものとして出力されている)

>ruby -e 'a=Dir.glob("*".force_encoding("UTF-8"));puts a;File.new(a.last)'
Allison Cornell
(snip)
Vladimir Krainev, Dmitri Kitaenko & Radio-Sinfonie-Orchester Frankfurt
Zoltán Kocsis
-e:1:in `initialize': Is a directory @ rb_sysopen - Zoltテ。n Kocsis (Errno::EISDI
R)
        from -e:1:in `new'
        from -e:1:in `
'

と、aアクセンテギュだと確認できる(例外のメッセージもrescueしてエンコードを変えれば正しく表示されるはず――と思ったらバグだったらしい。そのうち直るはず)。

この問題は、現在、どうすれば互換性を維持しつつうまく解決できるかどうか議論されていて、だいたいの方向が決まりつつある。参照:Ruby: IO and Encodings

B00BH9FD46
素晴らしい快演。
本日のツッコミ(全1件) [ツッコミを入れる]

_ naruse [まず、最初にruby -vしましょう。 > ruby -e 'p ARGV' * ここで戻り値のエンコーディング..]


2014-11-30

_ おばあさんが死んだ

妻が図書館から本を借りてきてテーブルの上に置いたので何気なく手に取る。沢木耕太郎か、ふーん、と戻そうとしたら、最初のやつを読めというので、読んだ。

最初の作品は『おばあさんが死んだ』とやたらと直截的な題で、一瞬の夏とか彼らの流儀だのといった奥行のある良く知っているタイトルとは違うので違和感を持っていると、妻が追い打ちをかけるように、まだデビュー仕立ての頃の作品だという。そんなものか。

で、読み始めた。

糞尿にまみれて老婆が衰弱しているのが大家によって発見されて救急車で運ばれる。私は医者だ、問題ない、帰るとか大暴れして手がつけられない。しかし衰弱しきっていて、発見されたときには既に餓死寸前、結局すぐに死んだ。21世紀の話ではなく1970年代中期のことである。というか、今よりも元気が良いところが1970年代っぽいなぁと思いながら読んでいると、家を片付けるために大家が入ってびっくり仰天、老婆が寝ていた同じ布団の中からミイラが出てきた。老婆の兄らしい。死んで1年以上はたつ。さらに、老婆がつけていたノートが出てくる。英語で書いてある。

そこからルポルタージュが始まる。

沢木耕太郎はいかなる漂流の果てにミイラの脇で餓死した(したのは病院だが、既に死んでいたようなものだ)のか彼女の人生を調べていく。

医者だといっていたのは嘘ではなく、昭和2年に神奈川の歯医者の学校を卒業して松本で開業医をしていたことがわかる。

その後、戦後になって窮乏していると、歯科医師会の配慮で埼玉の歯科医に雇ってもらえる。が、途中でやめて掛川の歯科医へ行く。そこをすぐやめて浜松の歯医者に勤める(順序は忘れた。長野→埼玉→静岡と少しずつ南へ進んでいるということだけが重要なのだった)。

眼が悪くなり、技術は過去のもの、新しい技術を学ぶことができず(と埼玉の証言)、患者からの評判は悪く(それで静岡の最初の歯医者はすぐにやめた)、しかし最後の歯医者ではそれなりに続いていた。

そこの院長が歯科技師で、つまり偽医者だったので本当の医師免許を持った医者を置いておきたかったからだ。ニセ医者とは言え、当時のことなので、歯医者の領分の歯型取りと、技師の領分の入れ歯(詰め物)作りを一人でやるため、他の歯医者よりもぴったりとした良いものを入れてくれると町では評判が良い。

が、時勢が悪く、マスコミによる偽医者追放キャンペーン(1970年代には戦後のどさくさで医者を名乗って仕事を始めた連中がたくさん残っていた)に怖気をふるって医院を閉鎖してしまったのだ。

その後は新たに雇ってくれるところがないことを悟り、ひたすら死へ向かって生きていくことになり、ついに兄が死に、自分も死ぬ。

沢木耕太郎は家族を探すがすべて取材を断られる。この兄妹は家系には存在しなかったことのようになっているのだ。

最後の手掛かりとして東京のほうの歯科女学校を卒業したという情報だけから在学していた歯科学校を探し出し、数人の同窓生の名前だけを知る(ここはエピソードとしておもしろい)。

女医なので姓が変わっていたらアウトだなと考えながら調べると、すぐに見つかった。姓が変わっていないとはラッキーだ。しかし会ってくれた女医さん(当然おばあさんだ)が話す。

あの頃、職業婦人になろうという人は訳があるものよ(金を稼ぐ必要があるという)。だから同窓の2/3は結婚なんてしてないしね(死んだばあさんは同窓生とのつきあいを絶っていたが、全員が全員疎遠になっているわけではない)。(間に戦争も入っているわけだが、ここでは日中戦争や太平洋戦争のことはまったく出て来ないし、おそらく死んだ婆さんにとってもあまり関係ない)

せっかく見つけ出したものの彼女は死んだ婆さんのことをあまり覚えていないという。印象が薄い。そういえばなんとか先生が可愛がっていたから聞いてみたらどうかしらね。

しかしなんとか先生も沢木耕太郎の取材を完全拒否する。

結局、彼女の人生はどのようなものだったかまったくわからないまま、入手したノートをを見る。失業してから死ぬまでの間の出納帳が細かく書かれている。収入がゼロなので少しずつ貯金がなくなっていくのが見える。きちんとつけているので、餓死がいつになるかが可視化されている。

沢木耕太郎が調べることができた事実だけが提示されている。

語られていないところに家族関係であるとか、心の動きであるとか、時代の変遷つまり経済や政治の流れがある。

実に恐怖に満ちた物語だ。

人の砂漠 (新潮文庫)(沢木 耕太郎)


2003|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|

ジェズイットを見習え