\documenttype{article} \newcommand{\urib}{http://www.albany.edu/\tld;hammond/gellmu} \newcommand{\uribm}{/\tld;hammond/gellmu} \newcommand{\uri8}{http://math.albany.edu/\tld;hammond/gellmu} \newcommand{\urim}{http://math.albany.edu/math/pers/hammond} \newcommand{\urie}{http://www.albany.edu/dept/math-stat/hammond} % \baseloc{\urib} \latexcommand{\bsl;tolerance=9999} \newcommand{\gellmu}{\abbr{GELL\-MU}} \newcommand{\gst}{\gellmu Syntactic Translator} \newcommand{\html}{\abbr{HTML}} \newcommand{\sgml}{\abbr{SGML}} \newcommand{\xml}{\abbr{XML}} \newcommand{\href}[2]{\begin{anch}[href="#1"]{#2}\end{anch}} \newcommand{\hrefb}[2]{\begin{anch}[href="#1"]{\bold{#2}}\end{anch}} \surtitle{\gellmu: Introductory Survey} \title{\gellmu\\ Introductory Survey} \subtitle{A Bridge for Authors from \latex; to \xml} \author{William F. Hammond} \date{Last updated: \today} \begin{document} \hdr{Recent} \begin{itemize} \item \hrefb{\urib/tarball.html}{Download} (v. 0.8.4.1, 6 July 2007)\\ Since the version 0.8.0.5 release in October 2004, ``regular'' \gellmu has provided a reliable dual presentation route for math articles written in \latex-like source language to (a) print and (b) online display in \abbr{XHTML} extended by \href{http://www.w3.org/Math/}{Mathematical Markup Language (\abbr{MathML})}. \item (22 July 2007) Video, slides, and pre-meeting notes from my talk \hrefb{\urim/Presen/Tug2007/}{\emph{Dual Presentation with Math from one Source}} on July 19 at \href{http://www.tug.org/tug2007/}{\abbr{TUG} 2007} in San Diego. \item \label{userdoc}Latest online version of the \bold{\emph{Introductory User's Guide to \emph{Regular} \gellmu}}: \begin{menu} \item \hrefb{\urib/igl/userdoc.xhtml}{XHTML+MathML} \item \hrefb{\urib/igl/userdoc.html}{classical HTML} \item \bold{PDF:} formatted for \hrefb{\urib/igl/userdoc.pdf}{8.5 x 11 in.} \item \bold{DVI:} formatted for \hrefb{\urib/igl/userdoc.dvi}{8.5 x 11 in.} \item \hrefb{\urib/igl/userdoc.glm}{\abbr{GELLMU} source} \end{menu} \item \label{manual}Latest online version of the \bold{\emph{GELLMU Manual}}: \begin{menu} \item \hrefb{\urib/glman/glman.xhtml}{XHTML+MathML} \item \hrefb{\urib/glman/glman.html}{classical HTML} \item \bold{PDF:} formatted for \hrefb{\urib/glman/glman.pdf}{8.5 x 11 in.} % or \hrefb{\urib/glman/glman-A4.pdf}{A4} \item \bold{DVI:} formatted for \hrefb{\urib/glman/glman.dvi}{8.5 x 11 in.} % or \hrefb{\urib/glman/glman-A4.dvi}{A4} \item \hrefb{\urib/glman/glman.txt}{Plain text} (made from classical \html using \softw{lynx}) \item \hrefb{\urib/glman/glman.glm}{\abbr{GELLMU} source} \end{menu} \item Author-level \href{\urib/xml/axgellmu.dtd}{XML document type definition} for the markup used in \emph{Regular} \gellmu;. It's the ``side entrance'' in the \href{\urib/glman/glman.html\#flow}{Regular \gellmu Flow Chart}. \display{\includegraphics[:scale="0.3" description="(Reduced image of the flow chart)"]{gcompsm}} \item \abbr{MathML} Demos of \href{http://math.albany.edu/math/demos/nyjm}{past articles from \emph{The New York Journal of Mathematics}} made with \gellmu;. (15 Oct. 2006: These have been rebuilt to be safe in Firefox 1.5.0.7.) \item Understand the system by \hrefb{\urib/examples/}{studying examples}. \item The latest \emph{fully tested} version of the \bold{syntactic translator} \hrefb{\urib/gellmu.el}{\quostr{gellmu.el}}, which is all that is required for \emph{basic} \gellmu. \end{itemize} \tableofcontents \section{\label{intro}Introduction} Generalized Extensible \latex;-Like Markup (\gellmu) is my concept for using \latex;-like markup to create documents in an easy plain text format that may be faithfully converted to high-powered documents marked up under \sgml. \tex; is the classical typesetting markup language (with robust handling of mathematics) that was created by Donald E. Knuth of Stanford University around 1980. The \emph{\latex; document preparation system} was created shortly thereafter by Leslie Lamport of Digital Equipment Corporation. \latex; is a simplified markup interface to \tex; designed to let \quophrase{the user concentrate on the structure of the text} rather than on typesetting. \sgml, an abbreviation for \emph{Standard Generalized Markup Language} (ISO 8879:1986), is the name of a family of markup languages, unspecified in number, designed for efficient automatic text processing with shared tools of a certain type. During the period 1993-1998 the most familiar example of a markup language in the \sgml family was \emph{Hypertext Markup Language (\html)}, the now familiar language of the \anch[ href="http://www.w3.org/"]{World Wide Web}\anch:. \html is a rather low-powered member of the \sgml family. The notion of \quophrase{power} for a language under the umbrella of \sgml has to do with the number of available translations to other document languages, both within and without \sgml. One of the ideas in my design for \gellmu is that with existing stable freely available \sgml tools one may go to almost any presentation format. For the community of mathematicians and scientists, who have become accustomed to using \tex; to create finely typeset documents for printing, this design provides a way automatically to create other carefully crafted forms from a single source document without over-burdening Donald Knuth's program \tex;. For typeset printed presentation, \sgml-based processing to the language \tex; should be optimal, while \sgml-based processing to Lamport (v.2) \latex; is used in didactic examples found below. (See also \qquostr{jadetex} at The Comprehensive \tex; Archive Network (\abbr{CTAN}); brief comment on \qquostr{jade} may be found below.) Most of the magic is due to Charles Goldfarb, the inventor of \sgml, James Clark, the author of \qquostr{nsgmls}, and David Megginson, the author of \qquostr{sgmlspl}. The \gellmu to \sgml transliterator that I am still writing could have been done in many languages, but ELISP, the language of GNU Emacs, probably the best-documented of all languages, and probably also the most easy-to-debug general purpose language, seemed to be just right for this. Beyond that I am grateful to Richard Stallman for encouragement and answers. Of course, when things do not work, the problems should in no way be attributed even in part to the antecedent work. \section{\label{demos}First Demonstrations} For a quick look, intended for those who know \latex;, there is \anch[href="\urib/igl/silly.html"]{\emph{A Silly Little GELLMU Article}} of about three printed pages. Alongside the \html form of this article are other versions: \begin{itemize} \item \anch[href="\urib/igl/silly.glm"]{the original \gellmu source markup}. \item \anch[href="\urib/igl/silly.sgml"]{its syntactic translation to an \sgml document}, involving only minimal knowledge of the document type. \item \anch[href="\urib/igl/silly.xml"]{its translation to an \xml dialect}, that is essentially equivalent to the source. \item \anch[href="\urib/igl/silly.ltx"]{\latex; source that was generated from the \xml version} \item \anch[href="\urib/igl/silly.dvi"]{\abbr{DVI}} made from the \latex; version. \item \anch[href="\urib/igl/silly.pdf"]{\abbr{PDF}} made with \softw{pdflatex}. \item \anch[href="\urib/igl/silly.xhtml"]{\abbr{XHTML+MathML}}. \end{itemize} And yes, of course, both \html versions were generated from the \abbr{XML} version. \section{\label{mathml}Can Content-Level \abbr{MathML} be a Derived Format?} Mathematical Markup Language (\abbr{MathML}) is a language under development by the \anch[href="http://www.w3.org/"]{World Wide Web Consortium (\abbr{W3C})}\anch: for (1) the display of mathematics in ordinary web pages and (2) automated interchange of mathematical segments among web-compatible software applications. Corresponding to (1) and (2) above the \abbr{W3C} has provided presentation and content-level versions of \abbr{MathML}. While \abbr{MathML}, which is an \xml language (formally \quophrase{application}), is verbose to a point that makes its writing by human authors almost impossible, the \abbr{W3C} project has not undertaken to provide a language suitable for authors. Moreover, one cannot robustly translate well-structured standard \latex; or \tex; math segments into \abbr{MathML} without the discipline of rules that are difficult to both to formulate and to enforce. The concept of \emph{generalized \latex;} in the \gellmu Project provides such discipline. The version of ``Regular'' (see \anch[Href="\#reggellmu"]{\ssec\sref{reggellmu}}) \gellmu in the \hrefb{\urib/tarball.html}{tarball}, has, since August 2004, provided translation of generalized \latex; source markup under the \emph{article} document type to \html with presentation-level \abbr{MathML} as well as translation to ordinary \latex;. The key question in designing a system sufficient for generation of mathematics under an umbrella like content-level \abbr{MathML} either using highly specialized \latex; or using an \sgml or \xml language for authors is how far authors will be willing to diverge from past habits. The \anch[href="\urib/authordtd/"]{Math Benchmark Document}\anch: offers an example of various mathematical segments that one might want to have automatically translated to a language with relative semantics such as content-level \abbr{MathML}. There is something of an explanation (now in \anch[ href="\urib/notation"]{early draft stage}\anch:), familiar to many research mathematicians but perhaps not to so many computer scientists, of why most legacy \tex;/\latex; markup of mathematics is \bold{not} ambiguous for robots when augmented by adequate \quophrase{type} information. Legacy practice has been to include \quophrase{type} information in paper documents as part of an article's descriptive text. In a few words, mathematicians are usually careful and fussy about notation. \gellmu will eventually provide for \quophrase{declared symbols} and optional associated alpha-numeric \quophrase{type} information. Ultimately there should emerge a public formal object, the \quophrase{mathematical expression} (\verb{mathexpr}) that is something like the \quophrase{regular expression} (\verb{regexp}) that is familiar to users of \qquostr{ed}, ELISP, \quophrase{Perl}, etc. One will want a separate, probably simpler syntax for the specification of the \emph{type} of a \verb{mathexpr}. My philosophy, and I think the only realistic philosophy, is that such types for mathexprs should involve \emph{relative}, rather than \emph{absolute}, semantics. One of the most basic types is categorical \quophrase{morphism}, which is a generalization of a calculus student's notion of \quophrase{function}; for much that is of interest to many, the notion of function will suffice, provided that each function symbol is understood to imply \quophrase{domain} and \quophrase{target} with \quophrase{target} not always the same as \quophrase{image} or \quophrase{range}. Regardless, users may conceptualize \quophrase{morphisms} as \quophrase{functions}. \section{\label{briefIntro}Brief Introductions} To summarize there are two concepts in this project. \subsection{Basic \gellmu} This may be useful for some authors familiar with \latex; who wish to write directly for an \sgml or \xml document type. It provides rudimentary \latex;-like commands with single argument syntax. \sgml attribute strings may be entered using a single \latex;-like option. It also offers a \latex;-like meta-command \emph{\bsl;newcommand}, which provides for macros with arguments. See \href{\uribm/ghtml.html}{Using the \gst to Write \html}. For example, the previous anchor would be marked up in \html as \display{ \quostr{\ltc;a href="\uribm/ghtml.html"}\\ \quostr{\gtc;Using ... \ltc;kbd\gtc;HTML\ltc;/kbd\gtc;\ltc;/a\gtc;} \ ,} and this is marked up somewhat more succinctly in \gellmu source as \display{ \quostr{\bsl;a\lsb;href="\uribm/ghtml.html"}\\ \quostr{\rsb;\{Using ... \bsl;kbd\{HTML\}\}} .} With the \emph{newcommand} definition for \emph{\bsl;href} \display{\quostr{\bsl;newcommand\{\bsl;href\}[2]\{\bsl;a[href="\#1"]\{\#2\}\}}} the even more succinct markup \display{\quostr{\bsl;href\{\uribm/ghtml.html\}\{Using ... \bsl;kbd\{HTML\}\}}} suffices. \subsection{Advanced \gellmu} This goes beyond basic \latex;-like command / argument syntax to provide \latex;-like multiple argument / option syntax and also what might be called \latex;-like grammar including \emph{\bsl;begin\{\ldots\}\bsl;end} and, if desired, blank lines to initiate paragraphs. When desired, advanced \gellmu has knowledge of a few command names, but the author must know the \sgml or \xml document type. \subsection{\label{reggellmu}\emph{Regular} \gellmu: The Didactic Production System} The didactic production system is a beginning at emulating \latex; with an \xml document type. In fact, \latex; can be modeled more precisely with \sgml than with \xml. The didactic production system consists of \begin{Menu} \item The \gst. \item An \sgml document type. \item An \xml document type. \item The following translators, coded in Perl under David Megginson's \softw{sgmlspl} framework: \begin{enumerate} \item from the \sgml document type (\gst output) to the \xml document type. \item from the \xml document type to \html. For this there are two routes: \begin{enumerate} \item The up to date \xml form of \html extended by \abbr{MathML}. \item Classical \html with pseudo-\tex; \abbr{ASCII} for math, still useful with terminal window browsers. \end{enumerate} \item from the \xml document type to \latex; \end{enumerate} \end{Menu} There is validation of each stage of output. Indeed, validation of the \gst's \sgml output is very useful for catching author errors. To assist with this there is line number alignment between the source and \gst output. If necessary\footnote{But only in very exceptional situations} one may intervene at any stage of the processing since the output of each stage is quite readable by humans. The two document types are parallel; the \xml version is intended to be the nearest \xml approximation of the \sgml version. The \sgml version should be regarded as \quophrase{in-house}, while the \xml version is suitable for export. (Usable, though not identical, source may be recovered from the \xml document type.) The document types have been designed for translation to many output formats. I have the intention ultimately to write or find others to write translators from the \xml document type to other formats. Finally the \emph{article} document type may have value as a layout vehicle that is useful as an intermediate formatting stage for structure-rich document types such as \slnt{DocBook} and \slnt{TEI}, and I would encourage those who might be so inclined to think about writing translators from such document types to \gellmu \emph{article}. The \anch[href="\urib/igl/iglm.xhtml"]{\emph{Brief Introduction to Regular \gellmu}} (in \abbr{XHTML+MathML}) is itself a \gellmu document. It deals mainly with the language. Various other versions are also available here: \begin{itemize} \item \anch[href="\urib/igl/iglm.glm"]{the input source}. \item \anch[href="\urib/igl/iglm.sgml"]{the syntactic translation to \sgml}. \item \anch[href="\urib/igl/iglm.xml"]{the translation to \xml}. \item \anch[href="\urib/igl/iglm.html"]{translation to classical \abbr{HTML}}. \item \anch[href="\urib/igl/iglm.ltx"]{the \latex; version}. \item \anch[href="\urib/igl/iglm.dvi"]{\abbr{DVI} made from the \latex;}. \item \anch[href="\urib/igl/iglm.pdf"]{portrait \abbr{PDF} made from the \latex;} \end{itemize} \subsection{Other Production Systems} An author may use \emph{advanced} \gellmu as a front end to many other \sgml or \xml production systems with appropriate setting of variables for the \gst. \section{\label{materials}Materials} All that one should need to get started is in the \anch[href="\urib/tarball.html"]{current tarball}. One should look at the \anch[iref="userdoc"]{user guide}, the \anch[iref="manual"]{manual}, both listed as ``Quick Anchors'' above, and the \anch[href="\urib/examples/"]{examples}. Note that the driver scripts found in the \quostr{bin} directory of the unpacked tarball may need editing for location names. Note also that the tarball may be installed in a ``Windows'' system equipped with \softw{Cygwin}, enhanced by a sufficient array of \softw{Cygwin}-provided packages, using the Linux driver scripts. In principle, it should also work on MacOS X, but I have no reports, and I have no idea what might be required to port it to earlier versions of MacOS. Although the project was begun begun in June 1998, its alpha release was in July, 2001. It will not be considered to have reached beta stage until I have more knowledge about use experience of others. Some older odds and ends may be found on the \gellmu \anch[href="\urib/veterans.html"]{veterans page}, and the very old page for \anch[href="\urib/igl/gellmum.html"]{early preview of materials}\anch: is still available. \section{\label{discussion}Relevant Public Discussion and Comment} My annotations allude, though not entirely precisely, to the article \anch[ href="http://www.redhat.com/knowledgebase/otherwhitepapers/whitepaper\und;cathedral.html" ]{\emph{The Cathedral and the Bazaar}}\anch: by Eric Raymond. \begin{defnlist} \term{\anch[href="mailto:listserv@listserv.albany.edu"]{Electronic Math Journals}\anch:} \desc Use \quophrase{subscribe EMJ} in the BODY of a message.\brk; There is an archive at the \anch[href="http://listserv.albany.edu:8080/archives/emj.html"]{host site}\anch:.\\ This is a bazaar. Sometimes technical, sometimes economic or legal, sometimes other. \term{\anch[href="mailto:listserv@relay.urz.uni-heidelberg.de"]{\latex; Development}\anch:} \desc Use \quophrase{subscribe LATEX-L} in the BODY of a message.\brk; Archive location, if any, unknown.\brk; Neither a bazaar, nor a cathedral. Very sophisticated and technical. User questions are not wanted. \term{\anch[href="mailto:www-math-request@w3.org"]{\abbr{MathML} and the \html Math WG}\anch:} \desc Make your message SUBJECT \quophrase{subscribe}. Message BODY should be blank.\brk; An archive will be found behind the \anch[href="http://www.w3.org/Math/"]{W3C Math}\anch: web site.\brk; This is a small bazaar in the nave of a cathedral. The cathedral \quophrase{chapter} has its own private list. Many chapter members, not all, who speak in the nave seem to feel constrained to representation of the chapter. \term{\anch[href="news:comp.text.sgml"]{UseNet news on \sgml}\anch: (if you get \quophrase{news})} \desc A bazaar with many, many important people. Sophisticated and technical, questions about \sgml (but not \html, nor http, nor \quophrase{the web}, ...) are usually answered well. \term{\anch[href="news:comp.text.xml"]{UseNet news on \xml}\anch: (if you get \quophrase{news})} \desc A recent spin-off from the \sgml discussion. Eventually it should operate at much higher volume than the \sgml discussion. \end{defnlist} \section{\label{pointers}Pointers to a Few Related Things} \begin{defnlist} \term{\hrefb{\urim/Presen/tug2001/}{Slides from 2001}} \desc A presentation given at The University of Delaware during the 2001 annual meeting of \href{http://www.tug.org/tug2001/}{\abbr{TUG}}. \term{\anch[href="http://meta.wikimedia.org/wiki/Blahtex" ]{\emph{Blahtex}}} \desc \emph{Blahtex} converts \latex;-like math markup to \abbr{MathML} for use with \anch[href="http://en.wikipedia.org/wiki/MediaWiki" ]{\emph{MediaWiki}}, which is wiki implementation software for \anch[href="http://en.wikipedia.org/"]{\emph{Wikipedia}}. \term{\anch[href="http://tbookdtd.sourceforge.net/" ]{\emph{TBook}}} \desc The \emph{TBook} System for \xml Authoring by Torsten Bronger. \term{\anch[href="http://www.pragma-ade.com/xml.htm" ]{\emph{Using XML in ConTeXt}}} \desc An indication that ConTeXt is moving into the XML world. \term{\anch[href="http://www.w3.org/TR/MathML/" ]{MathML, Version 2.0, Second Edition}\anch:} \desc A W3C recommendation (October 21, 2003). \term{\anch[href="http://www.mathweb.org/omdoc/"]{OMDoc: Open Mathematical Documents}\anch:} \desc A content based XML markup format by Michael Kohlhase of Universit\umlau{a}t Saarlandes and Carnegie Mellon University for mathematics on the Internet that extends \anch[ href="http://www.openmath.org/"]{OpenMath}\anch: to the document level. Released November 1, 2000. \term{Daniele Giacomini's \anch[ href="http://master.swlibero.org/\tld;daniele/software/sgmltexi/" ]{Sgmltexi}\anch:} \desc \abbr{Sgmltexi} is the new (August 25, 2000) \sgml model of \abbr{Texinfo}. It should be possible to have two way translation between the didactic \gellmu document type and \abbr{Sgmltexi} although one should not expect the two translations to be exact inverses of each other. This should be useful in deciding how to \begin{enumerate} \item provide mathematics in \abbr{Texinfo}. \item eliminate the need for bifurcation between \tex; and \abbr{Info} in future versions of \abbr{Texinfo}. \end{enumerate} \term{Paul Gartside's MathZilla Site at Pittsburgh} \desc \emph{MathZilla} is a nickname for the version of \anch[href="http://www.mozilla.org/"]{Mozilla}\anch: with internal knowledge of \abbr{MathML}. The site at \display{\urlanch{http://pear.math.pitt.edu/mathzilla/}} has Mathzilla demonstration pages and many related items of interest. It is the successor to his former site at Oxford. \term{David Carlisle's \anch[ href="http://www.dcarlisle.demon.co.uk/xmltex/"]{\quostr{xmltex}}\anch:} \desc \quostr{xmltex} uses \softw{TeX}, the program, to parse (without validation) an \xml document and then set it in \tex;, according to user rules written in code for \tex;, that govern what is done for each of the tags in the corresponding \xml document type definition. The same items are also available at CTAN in \qquostr{macros/xmltex}. \term{Sebastian Rahtz's \anch[ href="http://www.tei-c.org.uk/Software/passivetex/" ]{\quophrase{PassiveTeX}}\anch: at TEI.} \desc Uses \tex; as a formatting back end for documents prepared under an \xml language according to an \abbr{XSL} stylesheet. \term{\emph{TeX4ht}, \softw{htlatex}, \ldots : Current work of \anch[href="http://www.cse.ohio-state.edu/\tld;gurari/"]{Eitan Gurari}\anch: at Ohio State University.} \desc \hsf\brk A new way to make \html and \xml versions of \tex; and \latex; documents. This is based on a C program \anch[href="http://www.cse.ohio-state.edu/\tld;gurari/TeX4ht/mn.html" ]{\emph{TeX4ht}}, and on a related macro package for \tex;. The macro package causes \quophrase{\tex;, the program}, to add specials to its \abbr{DVI} output. The program TeX4ht operates on a \abbr{DVI} that has been so prepared and makes \html or \xml. (The \abbr{DVI} format has the abstract structure of a classical assembly language. There are several \quophrase{special} instructions that serve as wildcards. These \quophrase{specials} are of use only to processors that know about them on a case-by-case basis. They \emph{should}, in theory, be ignored by processors that do not recognize them.) In recent editions of \abbr{TUG}'s TeXLive a convenient default interface for using \emph{TeX4ht} to make \html from \latex; is the command \softw{htlatex}. \term{HyperLaTeX} \desc An early (mid 90's) package (unfortunately not on CTAN) for the production of \latex; and \html from a single specialized \latex; source document. \href{http://www.cs.uu.nl/\tld;otfried/Hyperlatex/}{Hyperlatex} is somewhat similar to \gellmu in its use of an Emacs Lisp program for generating \html though it seems not to provide a method for conscious writing under other \sgml or \xml document types. \term{The \latex;3 Project.} \desc Information is available in the document section of the current \latex;2E base distribution under the filename \qquostr{ltx3info.tex} (with \abbr{DVI} and Post\-Script version nearby). On the web one may consult the \anch[ href="http://ctan.tug.org/tex-archive/macros/latex/doc/ltx3info.pdf" ]{\abbr{PDF} version}\anch:. Plans for \sgml are mentioned in this document. There is a mailing list on the topic of \latex;3 development at the address \verb{LATEX-L@relay.urz.uni-heidelberg.de}. \term{Doug Lovell's \anch[href="http://www.alphaworks.ibm.com/formula/texml"]{TeXML at IBM}\anch:.} \desc TeXML is an \xml vocabulary for describing \tex; syntax. One writes an XSL style sheet to translate an \xml into TeXML. A small, simple program then readily translates TeXML to \tex;. (A November, 1998 release.) \term{Smart Documents.} \desc There are various forms of \quophrase{smartness}. \sgml will provide easily for all of them. See Richard Fateman's material on \anch[href="http://http.cs.berkeley.edu/\tld;fateman/MVSD.html" ]{\emph{More Versatile Scientific Documents ...}}\anch:. \term{Linux Documentation.} \desc The \quophrase{How To} documents for Linux systems are based on an \sgml language with ancestry in the \latex;-like language of the \abbr{QWERTZ} document formatting system from the University of Exeter (U.K.) in the early 1990's. The \anch[href="http://sgmltools-lite.sourceforge.net/"]{SGMLtools-Lite Project}\anch: is a recent effort to bring Linux documents under the \anch[href="http://www.oasis-open.org/docbook/"]{DocBook}\anch: language. \term{Luc Maranget's \softw{Hevea}} \desc \anch[href="http://cristal.inria.fr/\tld;maranget/hevea/" ]{\softw{Hevea}} is a \latex; to \abbr{HTML} translator, said to produce correct \abbr{HTML} 4.0. \term{\softw{Latex2html} and \softw{Latex2html}-with-MathML.} \desc \hsf\brk The familiar Perl package \anch[ href="http://www.ctan.org/tex-archive/support/latex2html/" ]{\softw{latex2html}}\anch: gained popularity in math departments during the early days of the web not only by translating the \latex; commands that could be marked up into \html but also by automatically putting out mathematics in graphic objects housed in \verb{"\ltc;img\gtc;"} tags; the graphics were created with subprocesses that used \tex;, \softw{dvips}, and some \softw{netpbm} utilities. Many features have been added. A 1998 \anch[href="http://www.geom.umn.edu/\tld;ross/webtex/webtex/"]{variant}\anch: at The Geometry Center offers the option of replacing the graphic objects with \anch[href="http://www.w3.org/Math/"]{\abbr{MathML}}\anch: objects. \term{The philosophy of \anch[ href="http://math.albany.edu/math/pers/hammond/unixphil.html" ]{Kernighan and Pike}\anch:.} \desc If you have never looked at their classic 1984 book, here are a few quoted paragraphs. Don't let their use of a trademark get in your way. \end{defnlist} \section{\label{aboutThis}About this Document} This document, which is primarily a web page, is itself a \emph{regular} \gellmu document (see \anch[Href="\#reggellmu"]{\ssec\sref{reggellmu}}). Versions of this document other than the \html version include the original \anch[href="\urib/igl/igl.glm"]{\gellmu source}, its \anch[href="\urib/igl/igl.xml"]{translation to \xml} (from which the HTML version is derived), the derived \href{\urib/igl/igl.xhtml}{translation to XHTML+MathML}, and the derived \anch[href="\urib/igl/igl.ltx"]{\latex source} from which a \anch[href="\urib/igl/igl.dvi"]{device independent (DVI)} file and a file in \anch[href="\urib/igl/igl.pdf"]{Adobe's portable document format (PDF)} were compiled. The PDF copy, which was generated using the free program \softw{pdflatex}, is tuned for printing on 8.5 x 11 inch paper by those who have yet to equip themselves (freely) for printing DVI. \end{document}