netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2003-06-11 古い日記からの変換データ [長年日記] ▲
_ javadoc ▲
Javadoc2HTML は,HTML2WinHelp を使ってやってみたが,どうも日本語 javadoc 中に正しい HTML でない(あるいは怪しいコード列が存在している)らしい.hhc.exe がエラーを出してしまうので,あきらめ.しかも,生成途中の .chm にしても約40MB程度あったので,JDK に対する HTMLHelp は無意味な存在っぽい.Google が使える場所なら Google のほうが軽量だ.ということで,このネタはお蔵入りさせておくことにする.
_ javadoc ▲
Javadoc2htmlhelp を作ろうとすると,HTML Help の中でインデクスとして何を含めるかが悩ましい.クラス名だけだと手抜だろうか.でも,HTML を parse したくはないし,Java ソースの doc コメントを parse するのも面倒なのでクラス名だけインデクシングしておいてあとは全文検索で使うことを前提にしてみよう.
適当に find や grep を使ってファイルを列挙するだけのスクリプトでいけるだろうか?
_ JBoss ▲
JBoss AOP のドキュメントに目を通す.XML で pointcut などのコンフィギュレーションを書くらしい.しかも Dynamic AOP でいきますとか,JSR 175 (C#などの持つ属性宣言機能,JDK 1.5で実装予定)に相当する機能も加わってるぞ,とか主張している.
JBoss を使ってる人が身近にいないのですごいのかどうか良く分からないが,XML でアスペクトのコンフィギュレーションを書くというのはちょっと良さそうに聞こえる.
まあ,言語(あるいはフレームワーク)が作れるのは当然で,問題はその上で何をするか,それに加えてアスペクトによってもたらされる複雑さをどうするか,ということになってくるのだろうけれど.
_ 論文 ▲
ちょっと名前が気になって H. Masuhara, G. Kiczales, C. Dutchyn:"A Compilation and Optimization Model for Aspect-Oriented Programs", Proceedings of Compiler Construction (CC2003)を見てみた.
Pointcut などの定義を関数型言語 (CLOS?) で書いてるのだが,partial evaluation して static に決定できたらstatic に埋め込んで,評価結果に if が残ったらguard つきの dynamic advice を埋め込むらしい.関数型言語がそれらしく使われているのは,初めて見たような気がする.
_ 論文 ▲
暇つぶしに SPA2003 に出ていた佐藤 芳樹,千葉 滋: ``Dynamic AOP とその実装手法について''を読んでみる.5ページのショートペーパーで具体的なことはほとんど書いてないのだが,JPDA の HotSwap (クラスファイルの再ロード)機構を使って動的 weaving を実装したらしい.しかも,パフォーマンス的に問題ない場所はブレークポイントでプログラムを実行し,ボトルネックだけを weave するという渋い方式.
それにしても,動的 weaving ってデバッグするの大変なんじゃなかろうか.ほとんどのデバッガ(およびプログラマ)は,実行時にプログラムが置き換えられることは想定していないと思うのだが…….自律コンピューティングの人たちはもう考えてるのかな?