XMLを使った3-wayタスクアサインプロトコル
数年前の文書だと思いますが、「XML is not S-Expressions」(http://www.prescod.net/xml/sexprs.html)があります。
XMLと言えば条件反射のようにS式を持ち出す論理を初めて聞いたのは、IPA未踏関係の集まりだった気がします。もっとも、2001年時点ですでにw3cにhttp://www.w3.org/People/cmsmcq/2001/xs-sexp/xscomp.htmlがあるので、XMLがブームになり始めた当初から(ぼくが知らなかっただけで)言っている人は言っていたのだと思います。
冒頭の文書にリンクしている記事を見つけました。どちらもコメントの議論が興味深いです。
前者は松本さんの1年以上前の日記です(昔、読んだ記憶があります)。 後者はもっと古い記事です。コメントの中でJavaとXMLの関係がCOBOLとJCLの関係に似ているという指摘があります。COBOL文化に馴染みがないので不明ですが。
XMLで条件分岐(つまりif-elseのような記述)を書いたり、手続き言語の代用をさせたりするのはどうなんだろう、と思っていましたが、「XMLは簡単そうに見える」ことこそが重要なのだと気づきました。
例えば次のふたつを並べて、近くの誰かに「どちらが簡単だと思うか」と聞いたと仮定します(*)。
- (setq foo "bar")
- <property name="foo" value="bar" />
99%、後者を選ぶと思います(一部の変人を除く)。
アンチXML派であれば、「簡単そうに見えることは間違い」あるいは「簡単そうに見えることは本質ではない」と言うかもしれません。 しかし、「簡単そう」という言質を取ることが、実は本質です。なぜなら、そう答えた瞬間、作業をその人に渡せるからです。
- 「XMLだから簡単ですよね?」
- 「はい」
- 「では、(作業)よろしく」
これが、最近アリエルで開発された3-wayタスクアサインプロトコルです。
(*) このふたつは特に等価な表現ではなく、単なる比較例です。前者をLisp処理系が評価すれば、シンボルfooに束縛されたオブジェクトが文字列型であることを知ります。表現の持つ情報量から見て、より等価なXML表現は次のようになるかもしれません。
- <property name="foo" type="text" value="bar" />
- Category(s)
- カテゴリなし
- The URL to Trackback this entry is:
- http://dev.ariel-networks.com/Members/inoue/3way-taskassign-protocol/tbping
Re:XMLを使った3-wayタスクアサインプロトコル
隣の人(S式をあまり知らない普通の人)にS式を見せたら、「XMLより簡単そう」と応えました。
仮説が誤りなのか、普通そうに見えて隣の人が変人なのか、どちらなのでしょう。