netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2003-06-28 古い日記からの変換データ [長年日記] ▲
_ 読書 ▲
ゲド戦記5「アースシーの風」読了.原題 "The Other Wind" を微妙に訳してるなぁ.(作中では「もうひとつの風」)
とりあえず今まで伏線だらけ(微妙な解決だったもの)に完全な解答セットを公開してる,ような感じがする.1巻を読んだときからは12年くらい経ってるので,作品中も時間が流れてるので以前の作品の話が「そんなこともあったなぁ」と感慨深いものがある.この続け方はうまいなぁ.
外伝の Tales from Earthsea が翻訳されたらフルセットで読み直そうかな.文庫本で出てくれれば一番いいのだが…….
_ RPG研 ▲
ゲド戦記5「アースシーの風」を借りるために朝だけ顔を出す.
レポートがあるとかで,一緒に帰った後輩の子が,実家が近所(マンションの隣の公営住宅)という人な上に実は下宿も近所(徒歩8分程度)だったことが発覚.だからといって特に意味はないのだが,微妙な縁というのはあるものかも.
_ MAngband ▲
ランダムダンジョン生成のアルゴリズムがいまいち怪しいので,http://www.trpg.net/webzine/200303/1000000034.htmlで紹介されていたhttp://www.aarg.net/%7Eminam/dungeon.cgi をかっぱらってくることにする.しかしこれ,ソースコードは公開してくれてるのだが,ライセンスが書いてないので,そのまま取り込むのはちょっと微妙ではある.まあ,実験的に使うだけだが.
_ AspectJ ▲
AspectJ 1.0.6 から 1.1 へ移行したとき,
interface Identifiable {
void setId(Id id);
Id getId();
}
aspect IdentifiableAspect {
private Id Identifiable.id = null;
public Id Identifiable.getId() {
return this.id;
}
public void Identifiable.setId(Id id) {
this.id = id;
}
public int Identifiable.hashCode() {
return (this.getId() == null) ?
super.hashCode() :
this.getId().hashCode();
}
}
と書いたアスペクトが動かなくなるらしい.
int around(Identifiable i): target(i)
&& call(public int hashCode()) {
return (i.getId() == null)
? proceed(i)
: i.getId().hashCode();
}
と書いたらうまくいった,とWilliam DeMoss II が Changes in introduction for aspectj compiler 1.1 というSubject で AspectJ-users に投げていた.
どうやらこれ,AspectJ 1.1 のバグらしいので fix されそう.個人的には,introduction はもうちょっと設計レベルで何か表現可能な図が思い浮かぶまではあまり使いたくないのでaround な実装でもいいかなぁ,とか思ってたりする.