Web-Lisp? Oh no!

Marcus G. Daniels marcus@cathcart.sysc.pdx.edu
30 Apr 1997 21:24:58 -0700


>>>>> "CB" == Chris Bitmead uid(x22068) <Chris.Bitmead@Alcatel.com.au> writes:

CB> I've often thought that a lisp layer on top of TeX would be a good
CB> thing. If we put a lisp interface on TeX or TeXinfo and made it a
CB> plug-in to the browser it might be a great documentation system.

IMO, DSSSL is the way to go.  Go to http://www.jclark.com to find
out more about DSSSL and an implementation called `Jade'.

The basic with DSSSL is that you attach Scheme functions to SGML
elements, and these elements expand into collections of generic
`flow objects', like external-graphics, pages, paragraphs, column sets, etc.
Different backends implement the flow objects however they want.

With the TeX backend for Jade what you do is define macros for each
flow object.  So, suppose you wanted asked for a table in your Scheme
code, Jade would create a file with a bunch of macro calls,

\startDisplayGroup{}
\startTable#{}
\endTable#{}
\startParagraph
\endDisplayGroup{}

Then it is necessary to implement (or find) a macro package that
implements these calls the way you want.

My experience is that these TeX macros get hairy in a real hurry.  Still,
it works and is hackable.  (And, of course, it would be possible
to implement a PostScript backend or an online browser).

Interested people might join the dssslist@mulberrytech.com (moderate
traffic).  Sebastian Rahtz <s.rahtz@elsevier.co.uk> is working on a
TeX macro package for Jade.  David Megginson <dmeggins@uottawa.ca> is
another person to talk to (he wrote the TeX backend to Jade).

Also, William Perry, the author of Emacs' W3-mode wants to have a 
DSSSL implmentation for Emacs, but AFAIK not much is implemented yet.