axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Axiom-developer] Re: Pamphlets and Latex


From: Stephen Wilson
Subject: [Axiom-developer] Re: Pamphlets and Latex
Date: 17 Jul 2007 18:09:37 -0400
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4

address@hidden writes:

> > I believe you already have a good idea of the concepts involved here.
> > Your trying to do the same thing but using LaTeX syntax. That would
> > be fine with me if it were not for the fat that it is not,
> > conceptually, pure LaTeX.
> 
> Eh? Please explain what you could possibly mean. If I run latex on
> a file and it generates a dvi file it cannot be anything but pure
> latex. I'm unable to understand what that statement could mean.

OK.  Lets assume for the purposes of this discussion that one type of
operation we wish to perform on a pamphlet is to find the set of
documentation chunks which relate to a particular domain.

The goal is to be able to type a command at the axiom prompt, or click
on a button, and have the relevant information organized and available
to the user.

Now in pure LaTeX, we can embed cross references, generate an index,
build a section hierarchies and create a particular view of the
information ideally suited to the reader of an article or book.  But
this is not what we want while sitting at the axiom prompt.

Now you could argue that we could scan the latex file and infer the
information from the markup therein.  This will fail as we would need
to write a full TeX parser to do that.

We could overload specific LaTeX markup which means one thing to LaTeX
and something completely different to a weave tool.  Im arguing that
that is bad design.

What we need is an unambiguous markup which has clear semantics and
that will allow us to do complex operations over a pamphlet.

We need to be able to represent a pamphlet in a file which a human can
edit.  We also need a representation in code which Axiom can manipulate.

LaTeX is one of many possible forms of output.  LaTeX does not live in
the same domain as pamphlets should.


> > The distinct advantage here is that we are using a syntax which is 
> > special to a pamphlet. 
> 
> <<name>>= <==> \begin{chunk}{name}
> @         <==> \end{chunk}
> <<name>>  <==> \chunk{name}
> 
> This is a bijection. It is entirely unambiguous. If it were not
> against my religion I could write a sed script to make the change.
> Pure syntax. Period.

Nope. <<name>>=  denotes a concept which a weave tool processes, can
manipulate in a copious number of different ways.

\begin{chunk}{name} denotes a construct useful to typeset a
document.

It just so happens that the semantics of the former permits the
syntactic substitution into the latter.

> > We need a weave stage and we need an 
> > unambiguous notation which we can accurately parse and transform.
> 
> We do not need a weave step except where we plan to do things like
> create hyperdoc pages from the latex file. Ordinary documentation,
> like the published bookvol1 is pure, unwoven latex. 

Right.  And that would be just be one simple output of the weave
stage.  Pamphlets are more than documentation!!  Pamphlets can, in
principle, produce several kinds of documents from the same source,
among other things, like executable code.  Thats not LaTeX.

> > Using latex syntax is ambiguous. Thats the main advantage, but a big
> > one with real technical advantages
> 
> Please explain why you think latex syntax is ambiguous.

LaTeX does not express a pamphlet.  It expresses a document.  So long
as we wish to work towards concepts such as the Crystal, we need
pamphlets.  Embedding the concept of a pamphlet in LaTeX, which itself
does not understand the term... therein lies the ambiguity.


Steve





reply via email to

[Prev in Thread] Current Thread [Next in Thread]