DEV Community

loading...

Discussion on: Let's find something better than LaTeX

Collapse
steshaw profile image
Steven Shaw

You might find the SILE typesetting system of interest 1. I went searching for something better after rewriting my CV in LaTeX. It's written in Lua, which I think is a mistake but still is fast (according to the author).

My thinking is that an improved typesetting system should be written in a fast, safe language — particularly Rust but Haskell or OCaml may more elegantly express the algorithms. It could certainly start life as an FFI wrapper around existing TeX/LuaTeX/XeTeX libraries. Techtonic seems like a project with that goal — although it is intended for processing .tex files 2.

The document language ought to be a programming language — in the vain of the unmaintained Scribe/Skribe Scheme based markup language 3 — but statically typed for easy maintenance (e.g. when upgrading "macro" packages/libraries) and better editor/IDE integration (i.e. LSP for documents).

Lout was a lazily-evaluated programming language and typesetting system that has unfortunately become an unmaintained GNU project. It was an excellent, thought-provoking idea 4.

Pollen 5 is a document preparation system written in Racket along with a typesetter called Quad 6. These projects are somewhat aligned with my thoughts, though not statically typed.

There's a couple of active typesetting system written in OCaml: Patoline 7 and SATySFi ("satisfy") 8. These projects seem very much aligned with my thinking but are quite young.

[1] sile-typesetter.org/
[2] tectonic-typesetting.github.io/
[3] www-sop.inria.fr/mimosa/fp/Skribe/
[4] en.wikipedia.org/wiki/Lout_(software)
[5] docs.racket-lang.org/pollen/
[6] docs.racket-lang.org/quad/
[7] patoline.org/
[8] github.com/gfngfn/SATySFi