トップ «前の日記(2009-09-10) 最新 次の日記(2009-09-12)» 編集

日々の破片

著作一覧

2009-09-11

_ iPod classic用首つりケース

家でiPod classicを使うようになったのだが、Tシャツでふらふらするには全く向いていないのでどうにかしたいと思っていた。ズボンの尻ポケット向きじゃないし、手で持つには繊細過ぎるというか気になる。

既に音楽は50G(しかも64Kエンコードしたmp3とかも山ほどあったりするので曲数は想像よりも多い)を遥かに超えているので、ナノやらシャッフルやらでは役には立たないのだ。

で、アマゾンでいろいろ眺めてもらちがあかない。首から下げるのがおそらく必須条件なわけだが、革のやつでも首から下げられるかわからないしそれなりの値段もするし、かといって……

というか、classicは売れてないんだな、と良くわかった。マーケットが狭いんだ。そうに違いない。

で、少し視野を広げたら30G iPod 5G用というのに、送料より安いのがあるのに目が付いた。

アマゾン評を読むと、紐を通す穴が空いていないから星1つとか、楊枝で簡単に空くから星5つだの、ぶかっこうだけど実用性があるから星3つとか、いろいろだ。

だが、首から下げられることは間違いなさそうだし、5G 30G(5GはgenerationのGか?)と120G classicはほぼ同じサイズだから問題もなさそうだ、で、買った。今日、届いた。

確かにぶかっこうだし(紐が変な通し方しなければならないし、紐がまさに紐以外の何物でもない形状だし)、ホイールを覆うシリコン部は薄くなっているが、感度は悪いは(AからZへ行くまで何度か滑らなくなるのでやり直しが必要になったりするし)、確かにケチもつけたくなる。

でも送料入れても600円だしな。

それに、一度聴く曲決めれば40分(たとえばシェーンベルクが後期ロマン派だったころのやつらとか)とか180分とか(オペラ)はいじらないわけで、結局、良い買い物だったようだ、と思う。

Sumajin Loop G5 30G Clear iPod 5G 30GB シリコンケース/スクリーンフィルム/ストラップ付属 クリア SUMLPG530CL(-)

で、なぜかずーっと、ウィーン時代の若きシェーンベルクを再評価している。

なんて素晴らしい作家なんだろうか。

Gurrelieder(Arnold Schoenberg)

小澤がボストンを振った、当然のように柔和で自然な音に、黒い山鳩ジェシーノーマンのびっくりするくらい美しいトーヴェ。だが、演奏よりも曲そのものだ。

新ウィーン楽派管弦楽曲集(ベルリン・フィルハーモニー管弦楽団)

最良のカラヤンとベルリンでもある、ペレアスとメリザンド。ゴローの剣一閃のおそろしさ。というよりも最初のメロディーの美しさだなぁ。

いや、違う。激しく燃え上がった(ベルリンは全く乱れない)後のレガート(タラーラ,ラララ,ラーラッの部分)の美しさはカラヤンならではなのだな。というか、このペレアスでカラヤンってのは確かにすごい指揮者なのだな、と納得したのだった。今聴いても納得する。天国みたいだ。スパークスとは違う意味で。

Number 1 In Heaven(Sparks)

でも、今はそういう時期ではない。

Pelleas Und Melisande / Variations for Orchestra(Chicago Symphony Orchestra)

で、こちらは理知的で明確かというとそんなことはなく、ブーレーズって本当に才能の固まりなんだなぁと息をのむ美しさ。シカゴはショルティのイメージで荒々しい感じのように思っていたけど、そんなこたない。

アメリカのオーケストラって、5〜60年代の指揮者のせいか、ラテン系な感じがするなぁとか思いだしたりしたり。

で、最後に6重装曲版の清められた夜を聴く。浄められた夜かも。

Verklarte Nacht(Schoenberg)

これは不思議な物語を持つ不思議な曲で、これほど美しい曲で、しかも幻想的なものは多くはないと思う。

月に照らされた森の細い道を若い女と男が歩いている。女は男に過去を話す。男はそれを許し、浄められた夜となる。

ばかみたいな物語に対し、足音のようなフレーズや月の光のような響き、夜の森の音色を配して、確かに音楽劇のようであり、しかし抽象的なドイツのベートーヴェン以来のスタイルのようであり、変な音楽だ。

オーケストラ版は、厚みのせいで、音楽劇の印象が強まる。映画音楽だな。フィルム無しの。

それに対して6重装曲版は声部がはっきり分かれているので、抽象度が高い。が、それでも描写的で、しかもメロディーがあり、響きがあり、ホ音かな、それにしてもシェーンベルクって何を考えていたんだろうか。

そうだ、思い出した。顔つきとか国の変え方とか、その後への影響とか、まるでジョンフォンノイマンみたいだな、と思うのだった。フォンって変だな。ノイマンのジョンさんか。

_ Ruby拡張ライブラリと例外

Rjbのバグ報告を見て、これまで無視してきたというよりも意識していなかった、拡張ライブラリで守るべき処理が1つ判明した。

Sinatraがなんでそんなものを取り出してきたかは知らないけれど、拡張ライブラリで例外を握る場合は、$!をクリーンアップしなければならない。

悪い例)

    int sstat;
    VALUE v = rb_protect(real_funcall, (VALUE)argv, &sstat);
    if (sstat)
    {
        return Qfalse;
    }

これが悪いのは、rb_protectで第3引数が0でない、つまり呼び出し先で発生した例外を無視して、そのままだということだ。

もっとも、スクリプトと拡張ライブラリの合わせ技はあり得るとは思うが。

def foo
  unless native_call
    raise FooError.new($!.message)
  end
end

そうではなくて、拡張ライブラリが提供する関数をそのままユーザに与えるならば、

    int sstat;
    VALUE v = rb_protect(real_funcall, (VALUE)argv, &sstat);
    if (sstat)
    {
        rb_set_errinfo(Qnil);   // cleanup
        return Qfalse;
    }

とすべきで、そうでないと、呼び出し側が$!を参照した場合に握り潰した例外を穿り出せるからだ(痛くもない腹が探られる状態なのに実際に悪事が出てくるというか)。

が、rb_set_errinfoが未定義の1.8の場合の書き方はどうすべきか?

ruby_errinfo = Qnil;

と、したけれど、むしろ1,8ならば#define rb_set_errinfo(x) ruby_errinfo = (x)としておいて、コードは同じにしといたほうが良かったかも。


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|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|

ジェズイットを見習え