https://en.wikipedia.org/wiki/James_Clark_(programmer)
https://www.drdobbs.com/a-triumph-of-simplicity-james-clark-...
http://xml.coverpages.org/ni2002-02-14-c.html
https://news.ycombinator.com/item?id=14154049
DonHopkins on Apr 20, 2017 | parent | favorite | on: What programming languages are used late at night?
I got some insight into what's great about Haskell by reading James Clark's "An algorithm for RELAX NG validation":
http://www.thaiopensource.com/download/old/relaxng/20020531/...
>This document describes an algorithm for validating an XML document against a RELAX NG schema. This algorithm is based on the idea of what's called a derivative (sometimes called a residual). It is not the only possible algorithm for RELAX NG validation. This document does not describe any algorithms for transforming a RELAX NG schema into simplified form, nor for determining whether a RELAX NG schema is correct.
>We use Haskell to describe the algorithm. Do not worry if you don't know Haskell; we use only a tiny subset which should be easily understandable.
Text.XML.HXT.RelaxNG.Validation
http://hackage.haskell.org/package/hxt-relaxng-9.1.5.5/docs/...
>Validation of a XML document with respect to a valid Relax NG schema in simple form. Copied and modified from "An algorithm for RELAX NG validation" by James Clark.
Clark Updates Jing - A RELAX NG Validator in Java.
http://xml.coverpages.org/ni2002-02-14-c.html
>James Clark has announced a new version of Jing with significant changes and revised documentation. Jing version '2002-02-13' implements the final RELAX NG 1.0 Specification and also implements parts of RELAX NG DTD Compatibility, specifically checking of ID/IDREF/IDREFS. James has "almost completely rewritten the validator using an improved algorithm. In the old algorithm, the state of the validation was represented by a stack of sets of patterns; in the new algorithm, the state is represented by a single pattern... The new release includes a documented API for Jing; in fact there are two APIs, a native API and JARV. James has rewritten the description of derivative-based validation to correspond to what's been implemented and to incorporate feedback received on the previous version from Murata-san and Kawaguchi-san... The Jing implementation is available for download as a JAR file and as a Win32 executable for use with the Microsoft Java VM.