The Functional XML Parsing Framework is a package of low-to-high-level lexing and parsing procedures that can be combined to yield a SAX, DOM, validating parsers, or a parser intended for a particular document type. The procedures in the package can be used separately to tokenize or parse various pieces of XML documents. The package supports XML namespaces, character, internal, and external parsed entities, xml:space, attribute value normalization, processing instructions and CDATA sections. It is intended to be a framework, a set of "Lego blocks" you can use to build a parser that follows DOM, SAX, or another discipline, and performs validation to any degree. As an example of such parser construction, the package includes a semi-validating SXML parser. It converts XML to SXML, an instance of XML Infoset as S-expressions, an abstract syntax tree of an XML document. SXML can be queried (in a XPath style), transformed, and evaluated. The framework parses XML in a pure functional style, as folding over a text XML document considered a spread-out tree. The input port is treated as a linear, read-once parameter. The framework's code does not use assignments at all.
Speakhtml is an HTML generator written in Scheme. It provides easy to use hooks to make use of Scheme in preparing any type of static content with abitrary complexity. Although using the Scheme programming language gives developers great power in designing HTML, it is perfectly possible generating Websites with Speakhtml without using or even knowing Scheme.
The Kawa Scheme System is a full Scheme implementation, completely written in Java. Scheme functions and files are automatically compiled into Java byte-codes. Kawa does some optimizations, and the compiled code runs at a reasonable speed. It provides the usual read-eval-print loop, as well as batch modes. The Kawa compilation framework is also useful for implementing other languages on top of JVM. There is active development of XQuery (the XML query language), and less active development of Emacs Lisp, Common Lisp, and EcmaScript.