In 1994 I volunteered for Legal Services Corporation, a community of lawyers that provide civil legal assistance to those in need. At the time, I was living in a remote area in West Virginia. The local branch was inundated with cases revolving around domestic violence. Unfortunately, the staff was having trouble maintaining these cases while at the same time providing services for the rather perfunctary legal duties which the majority of their clients needed.
From talking to them, it became clear that they needed some sort of flexible and continually updatable system which they could maintain and which would provide clients with basic simple legal services. To address this I wrote LegalLangauge.
LegalLanguage is an interpreted specialized language which I wrote in C. Using LegalLanguage, lawyers could write simple scripts that could then ask clients questions, give guidence, and print out the appropriate forms. Legal Services in WV made use of LegalLanguage to help their branches run more efficiently.
LegalLanguage C code
Example LegalLanguage script, allowing some clients to process their own divorces.