Thanks for the heads up Gaius, I've just clicked the "order" button!
On Fri, Nov 30, 2018 at 11:41 AM Gaius Mulley <gaius.mul...@southwales.ac.uk> wrote: > Yves Cloutier <yves.clout...@gmail.com> writes: > > > Hello, > > > > I'm in search of any documentation that provides insight into the design > > and implementation of a *roff. > > > > I know source code exists for a few implementations like Plan 9, > Heirloom, > > Groff and Neatroff. > > > > However what I'm in search of is something a bit more high-level than > > source code. Rather some design/implementation documentation that > explains > > an *approach* to implementing a *roff. > > > > Would anyone know if anything like this exists? > > I'd have a look at: > > Software Tools in Pascal by Brian W. Kernighan and P.J. Plauger > > I found it pretty interesting to see how the macro processor can be run > before the low-level roff commands and how the very very basic roff was > implemented. Many gems in the book - really like the getchar, putchar > definition/implementation. However it is light years away from a > complete groff though - but as a starting point it is great, > > > > > regards, > Gaius >