@hackage hexpat0.5

wrapper for expat, the fast XML parser

Expat (http://expat.sourceforge.net/) is a stream-oriented XML parser written in C.

This package provides a Haskell binding for Expat, with a choice of tree or SAX-style representation, and it includes an XML formatter. It is extensible to any string type, with String, ByteString and Text provided out of the box.

The emphasis is on speed and simplicity. If you want more complete and powerful XML libraries, consider using HaXml or HXT instead.

Note that hexpat has undergone a major API change since 0.3.x.

Benchmark results on ghc 6.10.1 against HaXml for parsing a 4K xml file with non-threading runtime: HAXML: 2631 us, HEXPAT: low-level parse-no tree: 243 us, lazy-String: 1240 us, lazy-Text: 782 us, strict-String: 1125 us, strict-Text: 770 us

With -threaded: HAXML: 2667 us, HEXPAT: low-level parse-no tree: 472 us, lazy-String: 1453 us, lazy-Text: 1057 us, strict-String: 1342 us, strict-Text: 943 us