On 23 May 2010 16:16, Andy Wingo <[email protected]> wrote: > On Sun 23 May 2010 11:25, Sascha Ziemann <[email protected]> writes:. > > I would agree, FWIW. I wanted to implement XML-RPC at one point in > tekuti, but decided not to after looking at the spec. An s-expression > serializer/unserializer is fairly simply to write, you avoid > distribution problems that way, and you also avoid impedance mismatches.
I've sometimes liked to say that whoever invented XML had gotten an F in college when studying LISP, although perhaps they never studied lisp at all. I've never really figured out whether I'm being a troll when I say that, or not. FWIW, I've worked with a data exchange format that has both an XML and a scheme/guile version. Running the scheme version of the dataset through guile-1.8 (and passing it into the C++ system that needs the data) is 3x faster than running it through the libxerces C++ XML parser. (I've got detailed speeds & feeds numbers if anyone cares) The website for libxerces says its "high performance, modular, scalable", which is either a bald lie hallucinated by the maintainers, or it's true, and a testament to how slowwww XML fundamentally is. If you want to be vaguely standards-interoperable, JSON is worth a look, its pretty simple & yet powerful too. Never used it in any data-intense situation, though. --linas
