Tools

Some computer programs I have written. Since I actually use them, I guess they count as structured procrastination.

pandoc

a general markup converter, written in Haskell. Converts from markdown, HTML, LaTeX, or reStructuredText to markdown, HTML, LaTeX, ConTeXt, reStructuredText, DocBook XML, RTF, groff man pages, or S5 slide shows. I use this for all of my lecture notes, letters, and websites.

gitit

a wiki program in Haskell, using HAppS for server and session management, git for file storage and history, and pandoc and highlighting-kate for markup and page rendering. (gitit’s git repository, gitit live demo)

yst

a program that generates static websites (including this one!) from string templates and data in YAML or CSV files.

lunamark

a markdown to HTML and LaTeX converter written in lua, using a PEG grammar.

highlighting-kate

a source code syntax highlighting library in Haskell. Parsers for different languages are automatically generated from Kate xml syntax definitions.

filestore

a generic interface to versioned storage for text or binary data, with backends for git and darcs.

texmath

a Haskell library for converting LaTeX formulas to MathML. There’s an online demo here.

cloudlib

tools for keeping a library of books and articles on Amazon’s S3 and SimpleDB

peg-markdown

an implementation of markdown in C, using a PEG (parsing expression grammar). See also markdown-peg, a PEG-based markdown in Haskell.

sep-offprint

produces PDF offprints from Stanford Encyclopedia of Philosophy entries.

zip-archive

a Haskell library for working with ZIP archives.

GOGAR (game of giving and asking for reasons)

a computer model of the scorekeeping dynamics in Robert Brandom’s Making It Explicit

Truth table tutor

an online truth table tutor, written in Haskell and Javascript.

Navajo Lucida Sans font

a TrueType font for the Navajo language