YstokHTML is a collection of Common Lisp libraries for generating and parsing HTML and XHTML documents. YstokHTML is based on:

All the libraries are based on effective algorithms not relying on regular expression functions.

LHTML - Lisp markup language for HTML

Both the YstokHTML generator and parser support the LHTML, the S-expression language used by the Franz's HTMLGen facility. Recently, Peter Seibel has described the FOO HTML, a similar generator syntax, in his book Practical Common Lisp.


(html:with-html-stream (*standard-output*)
  ((:table :border 2)
   (:tr ((:th :colspan 2)
         (:i "The square of four integers")))
   (dotimes (i 4)
      (:tr (:td (:princ i))
           (:td (:b (:princ (* i i))))))))
The square of four integers


Download and installation

YstokHTML is available from
yhtml-0-5-009.zip or

The distribution package contains both the ASDLite/ASDF file yhtml.asd and the LispWorks system definition file defsys.lisp.

Here is change.log.


Currently, there is no documentation on YstokHTML other than for the HTMLGen and PHTML mentioned above. However, the source code is instructive and there are the demonstration file html-examples.lisp and the test cases file phtml-test.lisp in the distribution package.

If you fail to grab the original documentation at Franz's website, try our local copies htmlgen.html and phtml.htm.

See also