http://kumiki.c.u-tokyo.ac.jp/~ichiyama/cgi-bin/hiki/EpsilonJ.html玉井先生がそんな話をしてます。なんか懐かし。Sony CSLでもCompositional Adaptation とかやってたっけ。
UML的なクラズ図を拡張すると、ソース上での変更が膨大になるってのは理解できます。実際には、そういう変更は避けて、現状の構造から最小に変更できるものを探すわけ。で、それを続けていくと、いつか破綻してしまう。そこで Refactoring する。
それが嫌なので、オブジェクト指向言語のシンタックスをいじって、構文的にクラスノードの追加とか関係とかを用意するってわけだね。
でも、僕はこの手のアプローチってだめだと思う。一つは、
context とか role とかの操作論的意味がわかりにくい
どのようにdebug/verificationするのかわからない
ってなところかな。そもそも、lexical scope とかも既に複雑すぎるような気もする。うちの学生で lexcial scope をちゃんと理解しているのっているのかな? gcc でも nested function とかあるけど、その変数の振舞とかはかなり複雑。
そんなこんなで Continuation based C とかやっているんだけど、あんまり成果がでないなぁ。
No comments:
Post a Comment