I am an Attorney, Programmer, and Independent Scholar.
Currently, I’m thinking a lot about Literate Programming and how to support it with some sort of graphical user interface.
At present I’ve been using nuweb, which has a rather primative DSL not far removed from Knuth’s original Web, although it does have a rather intriguing pattern matching scheme for parameterizing fragment expansions. But the program source is written in C and doesn’t lend itself to easy modification.
I am going to try replicating its functionality in Eastgate Systems Tinderbox, which is a highly flexible Turing Complete Outliner and Spatial Hypertext System with Prototype Based Inheritance and Query Based Background Agents, per Note Rules - On Add and On Remove Actions, a system of Aliases, and user created library Functions drawing on a fairly elaborate Action Code DSL that can leverage Designators like “parent”, “siblings”, “ancestors”, “grandparent”, “descendants”, and “randomChild”. Tinderbox can also use action code to create new notes and agents and perform actions when “typed links” are graphically created by dragging from one note into another, although Agents can also instigate the linking process programmatically.
Then I can prototype what I’d want in a nuweb replacement and implement it outside of Tinderbox using imba or crystal.