关于S-expression(SXML)

此随笔纯粹是为了记住S-expression这个名词。

 

S-expression有各种实现形式,这里只讨论SXML形式。

假如XML是这样的

<c>
  text1
  <e name="awesome">text2</e>
  <e>text3</e>
</c>

 那JSON就可以是这样的

{
  "c": 
    {
      "#text": "text1",
      "e": {"@name": "awesome", "#text": "text2"},
      "e": "text3"
    }
}

 那SXML就是这样的

(c "text1"
    (e (@ (name "awesome")) "text2")
    (e "text3))

lisp特性使其相当简洁。

 

之前有看到其他博客说s-exp不能很好的表达Hashtable,后面也回帖了说在不同的实现中有各自不同的解决方法,这不能算是大问题。

 

如果服务端用Common Lisp或Scheme,完全可以尝试s-exp来做数据格式,最关键是太性感了~~



posted @ 2012-03-22 17:08  谁抢了我的刺猬  阅读(1592)  评论(1)    收藏  举报