[comp.misc] What's the Monk document compiler?

domo@tsa.co.uk (Dominic Dunlop) (07/25/90)

From inside cover pages...

AT&T Technical Journal, vol. 68, no. 5: [No information on production tools
(September/October, 1989)		given]

AT&T Technical Journal, vol. 68, no. 6: ``This issue was formatted and
(November/December, 1989)		typeset on UNIX(R) System V''

AT&T Technical Journal, vol. 69, no. 1: ``This issue was formatted and
(January, February, 1990)		typeset on UNIX(R) System V using
					the Monk document compiler''

So what's the Monk document compiler?  Does it bear any relationship to the
?roff that we know and rub along with?  To SGML?  To anything at all?

Post or mail replies.  If the latter, state whether you want to be quoted
with attribution on the net, should there be sufficient interest for me to
summarize.

Thanks.
-- 
Dominic Dunlop

gwyn@smoke.BRL.MIL (Doug Gwyn) (07/27/90)

In article <1990Jul25.133427.5549@tsa.co.uk> domo@tsa.co.uk (Dominic Dunlop) writes:
>So what's the Monk document compiler?

Monk is described in "UNIX Research System, Tenth Edition, Volume II (Papers)",
q.v.

eowyn@alice.UUCP (sharon murrel) (08/02/90)

In article <1990Jul25.133427.5549@tsa.co.uk> domo@tsa.co.uk (Dominic Dunlop)
writes in comp.misc:

>So what's the Monk document compiler?  Does it bear any relationship to the
>?roff that we know and rub along with?  To SGML?  To anything at all?

Dominic missed the inside cover of the first issue produced in-house:

AT&T Technical Journal, vol. 68, no. 4 (July/August, 1989):
	
  Beginning with this issue of the AT&T Technical Journal, all papers will
  have been formatted electronically by Monk, a document compiler for the
  UNIX system developed at AT&T Bell Laboratories in Murray Hill, New Jersey.

This issue of the AT&T Technical Journal consists entirely of papers on
electronic publishing and includes an article on monk. The article, as well
as the monk system and the paper in the tenth edition manual, are written
by myself, Sharon Murrel, and Ted Kowalski.

Monk provides a English-like interface for authors

	|begin(abstract)This is a |bold(great) paper.|end(abstract)

and more importantly a database language for writing stylesheets.

Monk translates commands that appear in the author's text into troff commands
by consulting the style databases. These databases provide precise typographical
information that layout designers create for headers, footers, sections, figures,
abstracts, references, cover sheets, table of contents, and more. The document
stylesheets contain no raw troff, but rather use a set of primitives. Another
database provides the troff implementation of the set of primitives. Monk
automatically restores the values of stacking primitives (like indent and
font) upon exiting a region like the abstract above. Its database language provides
some programming capabilities, like loops and conditionals, and primitive string
handling to keep whitespace under control and zap auxiliary text like footnotes
where text is being reused in headers and table of contents.

It is related to SGML in that it tries to introduce a set of tagging nouns.
It is intended to minimize the need for raw troff, but it does nothing to prevent
the inclusion of raw troff. Furthermore, it goes to some effort to assure that the
order of tags is not important. It does not define a hierarchy of tags nor does
it require any specific tags or ordering of tags as must the document description
required by SGML. Monk documents are in general more easily translated into an SGML
compliant form than their macro brethren, but this depends upon consistent use of
the tags by authors.

Monk is currently being used in some efforts to standardize the look of AT&T
documentation. It provides a nice platform for defining new document styles.
It is not yet released, but keep hoping.

The paper in the tenth edition manual is really a user guide. The paper in the
AT&T Technical Journal spends more words providing an overview and describing
the stylesheet databases. If you would like a copy of these papers, please
send mail to eowyn@research.att.com. I changed the follow up to comp.text rather
than comp.misc.

						- sharon