いろいろ

今日は風邪だかクーラー病だかよくわかんないけれど(喉も痛い・・ってのは風邪なかなぁ)、だるくって微妙に頭が痛かったのでずっと寝てました。うー、暑寒い。でも汗をだらだら流しながら悶えるように寝るのって意外に気持ちいいんですよね。

ちょっとバテぎみなのはどうってことないのだけれども、コミケットまでには絶好調まで治さないと、戦えません!

LL Tiger

結局スルーでした。でも、なんのかんので twitter を覗いたり、一日中ちらちら気になっている、このツンデレさん♪・・といった感じだったので、素直に行くべきだったかも。

わたしの TL 上でも同様の意見が多かったのですが、ここ数年(つーと幅があるな)で 一番面白かったのではないかという感じがしました。

ときどきの雑記帖

あうあう..orz

宇宙ショー

地元の映画館が7/30で公開終了。な、なんですと!というわけで行ってまいりました。それにしても、むー、残念。毎週宇宙ショーだったのに、わずか3週間でこの密月もお仕舞いですか。しくしく。

来週お友達が夏休み帰郷するので見せたかったのだけれどなー。いあ、バルト9かシネリーブルまで引っ張っていくか。むふふ。

はやぶさ特集

はやぶさ特集のはずだった 7/31 の 追跡! A to Z ですが、

更新が大変遅くなりましたが、31日の「追跡!A to Z」は、予定を変更して「大相撲 改革への模索〜名古屋場所の15日間」を放送します。

http://www.nhk.or.jp/tsuiseki-blog/2010/07/30/

そりゃないよー。

Traits

興味津々なのは要するによくわからないから。もやもやしてます。

Traits: Composable Units of Behaviour
Traits: A Mechanism for Fine-grained Reuse
Applying Traits to the Smalltalk Collection Hierarchy

とか読んでますが、イマイチすっきりこない。


OOP において Class の型の側面を忘れるとき、Class は

  • A class is primarylly a generator of instances
  • A class has a secondary roule as a unit of reuse

で、これら二つの責務を併せ持つのはよくないんじゃないかな、というのが動機みたい。これは Java だと、has-a は 委譲みたいなやつですし、Ruby だと Mix-in モジュールを使えばいいジャンみたいな感じ。

で、具体的にクラスが提供する機能はこんなんかな?

  1. メソッドのホルダー(コレクション)
  2. インスタンス→クラスへのメソッド委譲
  3. これらメソッドからのシームレスなインスタンスフィールドへのアクセス
  4. メソッドコールのさらなるチェーン。instance→class→superclass
  5. インスタンス生成インターフェイス(クラスメソッド or 特別な言語構文)

Traits は 1,2 あるいは 1 しかフォローしない。というかTrait は メソッドのコレクションそのもの。

で、よくわかんないのが Traits が、なんで reuse の為の最良の仕組みになるか。

Mix-in モジュールが クラスと同じレベルのちょっと違う仲間だとしたら、Trait はクラスの腑のように感じます。

いまのところわたしはTraitsに、クラスの腑をカパッと開いて、取り出したり、継ぎ合わせたりする外科手術を可能にしたような印象を受けてます。それって美味しいのかな?

loopマクロ

http://www.shido.info/gb/guestbook.php?id=2403

僕は、悪名高い「拡張loopマクロ」を最近使い出すようになったんですが、使ってるうちに色々と面白い事が分かってきた。

ほうほう

loopファンは恐らくloop構文を「反復」とは捉えてないんじゃないのか、ってのが使っているうちに分かって来ました。じゃあ何だこれは?と。

loopはCommon Lispでの「リスト内包表記」だ。

ってのが僕が得た結論です。

な、なんだってー(ry