XML je tak trosku hype, je to proste stromova datova struktura zapsana v textove podobe + definice datovych typu.
Samozrejme to ma vyhodu v tom ze je to standard a spousta veci na to je hotovych, ale ta syntaxe je strasne upovidana a spatne citelna a me vzdycky mrzi ze se misto toho proste nepouziva jazyk Lisp kterej vlastne umi to same az na definice typu a existuje uz spoustu let.
No a XML je ted velky "objev" poslenich let a moda - takhle iracionalne uz to na svete chodi...
Pro zajimavost, Lisp vypada nejak takhle
(tree pekne_holky
(tree blondynky
(node petra)
(node lucka))
(tree cernovlasky
(node maruska)
(node pavla))
(tree zrzky
(node ivanka)
(node katka)))
no a programovani v Lispu spociva v tom ze takovyhle stromy vyrazu transformujete na jine stromy vyrazu, takze je to totalne flexibilni, sam si zvolite reprezentaci dat ktera nejlip odpovida problemu. Samozrejme mate k dispozici volani funkci, cykly, aritmetiku.
Vlastne je to to same co ma ve svete XML delat jazyk XSLT, ktery mi pripada strasidelny, az v nem budete neco vetsiho programovat od nuly, uvidite. Takhle se v nem definuje funkce
<xsl:template name="polozkaTemplate">
<xsl:param name="nazev" />
<xsl:param name="cena" />
kvuli te upovidanosti se mi dlouhe useky XSLT kodu hrozne spatne ctou.
To stejne v Lispu
(define (polozkaTemplate nazev cena)
bez zbytecnych znaku okolo.
Pokus o myslenku na zaver:
- pokud chcete vydelat penize, naucte se XML.
- pokud se chcete opravdu naucit programovat, naucte se Lisp :-)
Omlouvam se za dlouhy post, ale tohle je moje tema, takovy "cerveny" cudlik.
Když se vám tolik líbí Lisp a haníte XSLT, tak mi řekněte, jaká je obdoba dotazovacího jazyka XPath v Lispu? Dotazy v XPathu jsou krásně jednoduché a stručné, když se totéž napíše v DSSSL (což jen v podstatě Lisp), tak to se to teprve špatně čte ;-)
Ale jestli vás to potěší, tak alespoň principy se XSLT čím dál více blíží Lispu. Už mu chybí jen funkce vyššího řádu.