LaTeX Profiles as Objects in the Category of Markup Languages

William F. Hammond

Dept. of Mathematics & Statistics
University at Albany
Albany, New York 12222 (USA)

TeX User Group (TUG)
San Francisco, June 2010

1.  Translation of LaTeX

What works well with translation software?
Profiled usage of LaTeX.
  • Carefully limited command vocabulary.

  • Tuned translation software.

2.  Today's Suggestion


formalize profiled usage


3.  The Notion of LaTeX Profile

  • A dialect of LaTeX with a fixed command vocabulary where all macro expansions must be effective in that vocabulary.

  • A language essentially equivalent to an SGML document type with a canonical XML shadow.

4.  A Simple Example

of a document under a LaTeX profile

\surtitle{LaTeX Profiles}
\title{\latex profiles: An Example}
Classical \latex can be very hard to translate, but
\latex profiles are straightforward to translate.
It's easier to learn to write in a \latex profile than to
learn to write \latex.
\bold{Gratuitous Mathematical Content:}
The numbers $\pi$, $i = \sqrt{-1}$, and $e = \func{exp}(1)$ are
related by the equation
\[ e^{i\pi} = -1 \ . \]

5.  Generalized LaTeX

A TeX Catalogue Entry from 2001

not under a LaTeX profile

\caption{LaTeX-like markup for writing XML documents}
\author{\name{William F. Hammond}\email{}}
 . . .

6.  Notion of Category

  • A category consists of:

    1. Objects

    2. Arrows between objects

  • Rule: An arrow followed by a second is also an arrow

  • Relevance: to suggest a way of thinking about markup

  • (No plans for actually using category theory)

7.  The Category of Markup Languages

  • Markup languages are the objects

  • Translations are the arrows

8.  Classical LaTeX: an object in the category

(to the extent that classical LaTeX
is a well-defined language)

  • LaTeX is a reasonable translation target (for author-level markup languages).

  • LaTeX is a poor domain for translation to languages other than printer languages.

9.  Texinfo: an object in the category

  • The language of the GNU Documentation System.

  • A good domain for translation.

  • Essentially equivalent to an author-level XML document type — an historical accident

  • No provision for author-level math.

10.  SGML & XML

  • SGML is a subcategory of the category of all markup languages

  • XML is a subcategory of SGML

  • XML is SGML made suitable for the World Wide Web

11.  Good domains for translation

  • Author-level SGML and XML document types are, by design, good domains for translation, i.e., arrows can flow from these document types.

  • Arrows can be “chained”; these pipelines work well.

12.  The LaTeX Project

  • Sponsor one or more reference profiles

  • Sponsor translations from reference profiles to

    1. DVI and PDF
    2. HTML (including math)

13.  Publishing

  • Encourage maintainers of XML document types to reach HTML and PDF by translating first to reference LaTeX profiles

  • Encourage authors to submit articles to journals as LaTeX instances under reference profiles.

14.  The GELLMU Project

  • Demonstrates that these ideas are not vaporous

  • The GELLMU didactic document type may be viewed as a LaTeX profile that can serve as a base for constructing reference profiles

15.  These Slides

  • HTML with Math

  • Written in the GELLMU didactic document type albeit with slides in mind

  • Generated from the XML document type with a special translator for making HTML slides

  • Gratuitous Math: 0txetdtt=1xk=11+1kx1+xk

16.  Acknowledgement

The XHTML + MathML version of these slides uses W3C's Slidy by Dave Raggett, a JavaScript/CSS package for sizing and flow control of an HTML or XHTML slide show.
(The slides were generated in a non-standard fashion from GELLMU source.)