Gostaria de fazer uma pergunta sobre a notação XML e S-expression (-ish). As expressões S são bem antigas; eles também são realmente simples. Poderíamos considerar duas formas com significado igual e sintaxe diferente:
(código xml extraído da wikipedia polonesa )
<?xml version="1.0" encoding="UTF-8"?>
<ksiazka-telefoniczna kategoria="bohaterowie książek">
<!-- komentarz -->
<osoba charakter="dobry">
<imie>Ambroży</imie>
<nazwisko>Kleks</nazwisko>
<telefon>123-456-789</telefon>
</osoba>
<osoba charakter="zły">
<imie>Alojzy</imie>
<nazwisko>Bąbel</nazwisko>
<telefon/>
</osoba>
</ksiazka-telefoniczna>
Versão S-Expression (-ish):
(:version "1.0" :encoding "utf-8")
(ksiazka-telefoniczna :category "bohaterowie książek"
; komentarz(a comment)
(osoba :charakter "dobry"
(imie Ambroży)
(nazwisko Kleks)
(telefon 123-456-789))
(osoba :charakter "zły"
(imie Alojzy)
(nazwisko Bąbel)
(telefon)))
A versão S-Expression é muito mais concisa. Evitamos a redundância usando notações de lista simples, mas ainda podemos definir a sintaxe para incluir as coisas que queremos ter (por exemplo, propriedades). Obviamente, este é apenas um exemplo, e o padrão real poderia ter sido melhor ou simplesmente diferente; no entanto, é mais curto e fácil de analisar. Por que o XML venceu?
(para "This is a paragraph " (footnote "(better than the one under there)" "." /footnote) /para)
.