# two sets of hyphenation patterns without a newlanguage

While reading hymaster.tex, part of hyacc-cm, we find the following statement:

It is important to use version 3.xx of TeX, and a version 3.xx of plain.tex. The critical date is autumn 1989, and earlier material will be inadequate. In earlier versions of TeX, only one language can have hyphenation at a given moment --- usless one uses the "dirty trick" of John Hobby which permitted Desarmenian to distribute a French-English version of Plain format.

What was this "dirty trick" that, apparently, would allow us to use two sets of hyphenation patterns without adding a \newlanguage?

• I think I saw it in the proceedings of a TeX conference, but unfortunately I don't have the book. I possibly misattributed the code. – egreg Sep 7 at 15:40
• I already do a dirty trick to have three sets of hyphenation patterns in one file, for my latin|greek|cyrillic works; but that's trivial, since the alphabets don't intersect: the interesting problem is for a set of languages that share the same alphabet. That's why I'm asking. – texnezio Sep 7 at 18:34
• @texnezio I think this question is only of historical interest right? Otherwise with \newlanguage one can have multiple hyphenation patterns and switch between them? – ShreevatsaR Sep 7 at 19:14
• @texnezio As far as I remember the main part of the trick consisted in using uppercase letters for defining the patterns for one of the languages. – egreg Sep 7 at 19:25
• It is partly historical, but massively theoretical: trying to understand the pragmatics of \patterns. – texnezio Sep 11 at 20:36

This is not an answer to this question.

The quote does not say when the “French–English version of Plain format” was distributed, but it must have been sometime before the autumn 1989 mentioned.

If you look at the TUGboat list by author, you'll find that Jacques Désarménien published an article in TUGboat issue 5:2, November 1984. The article is titled “How to Run in a French Environment: Hyphenation, Fonts, Typography”.

It describes a French version of Plain (not the combined French–English version described in the question). The short version seems to be that they defined a special font by adding ten accented characters (and guillemets) into non-ASCII positions, and called the resulting font “French Computer Modern” (see Appendix of the above). They defined macros \frm and \fit for roman and italic type in these fonts (alongside \rm and \it which continued to use the regular Computer Modern). Then they generated hyphenation patterns for French.

The article also mentions that further details on the hyphenation are described in a reference [d]:

J. DÉSARMÉNIEN, La division par ordinateur des mots français avec le logiciel TeX, preprint.

This seems to have been published a couple of years later as:

J. Désarménien, La division par ordinateur des mots français : application à TEX, in Technique et Science Informatiques, vol. 5, No 4, 1986 (pp. 251–265).

(going by references here and here and elsewhere). Unfortunately I can't find this article online (and can't read French anyway) so this looks like a dead end for me. But maybe someone else will be able to find it or use the details to think of something.

So it appears (from the quote in the question) that sometime after this 1984 article, Désarménien came up with a combined French-English version, in which, in addition to the French hyphenation described above, English hyphenation continued to be available. Perhaps details are available in the 1986 paper.

(My theory: From the mention of John Hobby in the description, and some hints already present in the 1984 TUGboat article, it may have something to do with fonts. The TUGboat article mentions that an upcoming version of METAFONT would support 256 slots instead of 128, and the idea of putting another “copy” of the alphabet in the upper half (positions 128–255) of 256 available slots. Maybe this is what they did (even though TeX itself only supported 128 characters at the time), and somehow used English hyphenation in one half and French in another.)

• I am aware of these works by Desarmenian, thanks. In fact, I think Mike Ferguson's MLTeX was at the time (and is still today) a far more elegant and general solution than the production of these ad hoc fonts for French typography; but that's mnsho. – texnezio Sep 7 at 20:13
• @texnezio Ooh, does the second work give any hint about how it was done (the question you're asking)? Anyway it's not surprising that "dirty trick" and "elegant" would be somewhat mutually exclusive :-) – ShreevatsaR Sep 7 at 20:50
• Found another clue: "Under TeX in version 2 there was the possibility of flushing out existing patterns at any moment and replacing them with new; these patterns could be arranged to serve two languages at once using a trick that Knuth attributes to J. Hobby (see early versions of The TeXbook)" -- from here. – ShreevatsaR Sep 9 at 16:52
• Hobby is not mentioned in the index of the seventh printing (June 1986) of The TeXbook, so if the previous quote is correct it must refer to an even earlier version. – ShreevatsaR Sep 9 at 17:04
• Indeed, Ferguson has a 1985 paper introducing the primitive \language, allowing several sets of hyphenation patterns; so, apparently, Hobby's trick was unnecessary from 1985 on, provided you added the primitive to your local TeX binary. – texnezio Sep 11 at 20:29