html を DSL に

HTMLをコード中に記述したらそのまま表示してくれるようなものを…やろうと思ったら変数展開とかサニタイズとかもできると思います。以下のコードは から始まってるところもコードです。

#!/usr/bin/env io

setSlot("<", method(
    write("<", call message argAt(0))
    Lobby
))
setSlot(">", method(
    if (call message argAt(0),
      write(">", call message argAt(0)),
      write(">\n")
    )
    Lobby
))
setSlot("</", method(
    write("</")
    Lobby
))
setSlot("forward", method(
    write(call message name, " ")
    Lobby
))

<html>
 <head>
  <title>test html.io</title>
 </head>
 <body>
  <h1>test html.io</h1>
  hogehoge naiyou dayo
 </body>
</html>

昔と比べて、 thisMessage とかが call message とかに変わったとか。

http://d.hatena.ne.jp/shinichiro_h/20051018#1129590975

なにかあれば下記メールアドレスへ。
shinichiro.hamaji _at_ gmail.com
shinichiro.h