1

The DomTool language is a statically-typed functional language, like Haskell or ML. Its designers expect that anyone who is an expert Haskell and ML programmer will be able to learn it easily by reading the language reference. However, you can be a competent Haskell or ML programmer and still find the language reference impenetrable.

If you understand the DomTool language and its type system, you can figure out how to make a valid call to a DomTool directive by looking up the directive's type signature in the standard library reference. (You may also need to find directives that produce values of the necessary argument types.) However, the type signature doesn't tell you much about what a directive actually does. Right now, most of the directives are undocumented. The only way to figure out what they do is by making guesses based on their names, combing through the examples page and the secret outdated examples page, reading the source code, and doing trial and error.

We don't expect most HCoop members to ever understand the DomTool type system. If you need to use it for something that isn't described on the examples page... good luck!