---
title: "On FROFF — paper by Abe et al. (1980) — summary and ideas"
description: "The paper presents FROFF (\"Flexible Run OFF\"), a document formatter from Osaka University. 1 reference."
authors: ["Norihiro Abe", "Nobutaka Uemura", "Masahiro Higashide", "Saburo Tsuji"]
year: 1980
venue: "COLING 1980 Volume 1: The 8th International Conference on Computational Linguistics"
source: "https://aclanthology.org/C80-1039/"
licence: "CC BY-NC-SA 3.0 (ACL Anthology, before 2016)"
licence_url: "https://creativecommons.org/licenses/by-nc-sa/3.0/"
summary_licence: "Elamur Cosmic License"
canonical: "https://research.elamur.ai/free/en/papers/abe-1980-froff-text-processing-system-english/"
---
[Elamur Research](https://md.research.elamur.ai/free/en/) · [this page in HTML](https://research.elamur.ai/free/en/papers/abe-1980-froff-text-processing-system-english/)

[home](https://md.research.elamur.ai/free/en/) / [papers](https://md.research.elamur.ai/free/en/papers/) / [1980](https://md.research.elamur.ai/free/en/papers/1980/) / On FROFF: A Text Processing System for English Texts and Figures

# On FROFF: A Text Processing System for English Texts and Figures

**Authors:** Norihiro Abe, Nobutaka Uemura, Masahiro Higashide and Saburo Tsuji · **Year:** 1980 · **Venue:** [COLING 1980 Volume 1: The 8th International Conference on Computational Linguistics](https://md.research.elamur.ai/free/en/venues/coling/) ([COLING 1980](https://md.research.elamur.ai/free/en/venues/coling/1980/)) · **Licence:** [CC BY-NC-SA 3.0 (ACL Anthology, before 2016)](https://creativecommons.org/licenses/by-nc-sa/3.0/)

**Links:** [Publisher's page](https://aclanthology.org/C80-1039/) · [PDF](https://aclanthology.org/C80-1039.pdf) · [OpenAlex](https://openalex.org/W2045462418)

**Citations:** 0 citations (OpenAlex, 2026-10-14)

## Summary
The paper presents FROFF ("Flexible Run OFF"), a document formatter from Osaka University. It produces camera-ready English papers that contain figures, tables, line drawings and mathematics, and it runs on modest laboratory hardware. Its predecessor was the authors' typewriter-based ROFF, which used fixed-width characters. FROFF instead drives a cheap dot-printer, which makes it a low-cost alternative to TROFF, since TROFF needed an expensive phototypesetter under UNIX.

The system is written mostly in FLISP, with output drivers in Fortran and Assembler. It offers:
- proportional character widths;
- fonts and sizes that can be switched mid-text;
- relative positioning in any direction;
- picture output from disk or a TV camera;
- a user-extensible rule (macro) layer on top of about 60 primitive commands.

Processing happens in stages. First, rules are expanded. Next, each command is evaluated by calling a corresponding LISP function. Finally, the result is converted to printer data.

The authors typeset this very paper with FROFF. They report it is practical overall, but note three weaknesses: math is handled awkwardly, the system is slow, and terminals often lack lowercase input. To work around the last two, they draft in ROFF and convert the text automatically.

## Key points
- **Hardware:** an HP2108A minicomputer (64 Kbytes) with a 256 Kbyte auxiliary memory. This memory is split between the FLISP free list and an image region. Output goes to a Versatec dot-printer.
- **Fonts and units:**
  - About 60 commands are available.
  - Fourteen fonts exist, and 60 are planned.
  - Each glyph has its own width; for example, "I" is 13×12 dots and "W" is 29×32 dots.
  - Lengths can be given in MM or CM, and 1 cm equals 78.8177 dots.
- **Rules:** rules are declared by name from a library, or defined by users with the ".." construct. A rule's body may call other declared rules. The .St and .Rs commands push and pop system parameters, so a rule's side effects (such as a font change) can be undone afterwards.
- **Automatic capitalisation:** words after a sentence-final period are capitalised, while words after "i.e." or "e.g." stay lowercase. This lets text be typed on uppercase-only terminals. The drawback is that deliberately all-caps strings need special rules.
- **Math limitation:** expressions are split into blank-delimited "units", the same as ordinary text, so formulas can break apart. The authors concede that TROFF is better here.

## Interesting ideas
- Users write high-level named rules that are first expanded into a small set of primitive commands, and only then is each primitive executed by its own function, which keeps the core small and lets the vocabulary grow without touching the engine.
- Rules explicitly save the parameters they change and restore them on exit, so local formatting effects never leak into surrounding text.
- Capitalisation is decided by simple common-sense rules (capital after a period, lowercase after "i.e."/"e.g."), and the paper openly names the case these rules get wrong.
- A fast, cheap fixed-width system is used for drafting and debugging, and a translator converts its input for the slower high-quality system while passing math and figure commands through unchanged.
- The authors validated the system by producing their own conference paper with it, which exposed real usability gaps such as speed and math handling.

## For Mova

How these ideas could serve Mova, our small open language model — its files, stages and tests:

- **I1** (back): Generation templates could be macro-like rules that expand into a fixed set of primitive realization operations, so new constructions are added as rules while each primitive step stays individually traceable.
- **I2** (world): Hypothetical, negated or reported contexts could push a scoped copy of world state and pop it afterwards, keeping counterfactual facts from contaminating the main world of the text.
- **I3** (tokens): Sentence splitting and truecasing could use a small explicit rule set with an abbreviation exception list, documenting the known failure cases as test items.
- **I4** (tree): UD dialect converters could likewise rewrite only the relations that actually differ and pass everything else through verbatim, with the quick perceptron parser for iteration and gparse for final output.
- **I5** (learn): Running Mova end-to-end on its own documentation or course material as a standing dogfood test would reveal practical weaknesses that isolated benchmarks miss.

*Our summary of the paper, in our own words — not its text. The work belongs to its authors; read it at the links above.*

## Institutions

- [The University of Osaka](https://md.research.elamur.ai/free/en/universities/the-university-of-osaka/) — University, Osaka, Japan · 17 works · 517 citations
- [NEC](https://md.research.elamur.ai/free/en/companies/nec-jp/) — Company, Tokyo, Japan · 7 works · 546 citations

📚 Shelves (4): [🖥️ Computer Science](https://md.research.elamur.ai/free/en/shelves/computer-science/) · 18,614 works · [🎭 Arts and Humanities](https://md.research.elamur.ai/free/en/shelves/arts-and-humanities/) · 17,450 works · [🧮 Computational Theory and Mathematics](https://md.research.elamur.ai/free/en/shelves/computer-science/computational-theory-and-mathematics/) · 321 works · [🎭 History and Philosophy of Science](https://md.research.elamur.ai/free/en/shelves/arts-and-humanities/history-and-philosophy-of-science/) · 62 works

🧭 Topics (1): [English](https://md.research.elamur.ai/free/en/topics/english/) · 2,379 works

## Cite

Cite as: Norihiro Abe, Nobutaka Uemura, Masahiro Higashide and Saburo Tsuji. 1980. On FROFF: A Text Processing System for English Texts and Figures. COLING 1980 Volume 1: The 8th International Conference on Computational Linguistics.

The paper itself, not this page. BibTeX from the library's record of the work.

```bibtex
@inproceedings{abe1980froff,
  title = {{On FROFF: A Text Processing System for English Texts and Figures}},
  author = {Norihiro Abe, Nobutaka Uemura, Masahiro Higashide and Saburo Tsuji},
  booktitle = {COLING 1980 Volume 1: The 8th International Conference on Computational Linguistics},
  year = {1980},
  doi = {10.3115/990174.990221},
  url = {https://doi.org/10.3115/990174.990221}
}
```

- [← previous Signalling the Interpretation of Indirect Speech Acts](https://md.research.elamur.ai/free/en/papers/cohen-1980-signalling-interpretation-indirect-speech-acts/)
- [next → On the Derivation of a Conversational Maxim](https://md.research.elamur.ai/free/en/papers/hofmann-1980-derivation-conversational-maxim/)
- [↑ back to papers of 1980](https://md.research.elamur.ai/free/en/papers/1980/)

## References

1 references, 0 of them with a card of ours. ↗ leads to the work, «find» searches for one we have no id for yet.

1. 1] Jack E. Shermer and Lortnda L. Cherry : The Soft Display Word Processor, Computer, Vol.ll, No.12 p.39 (DEC. 1978) 2] David H . Hartke, Warren M. Sterling, and Jack E. S h e r m e r : Design of a Raster Display Processor for Office Applications : IEEE Computers, C-27, No.4, pp.337-348 (APR. 1978) 3] B. W. Kernighan, L. L. Cherry, A System for Typesetting Mathematics, CACM, Vol.18, No.3, p.151 (1975) 4] Tsukuba Computer Center : Tsukuba R u n - o f f System, (1976) 5] M. E, Lesk and B. W. Kernighan : Computer Typesetting of Technical Journals on UNIX, Proc. of NCC, pp.879-888 (1977) 6] K. Hasebe, S. Nomoto and H. Ishida : An On Command name Arg-i is a variable including system parameters, this stacks values of arg-l. .St a r g ' l - - - arg-n ............................................................................ .Rs arg,1 - - - arg-n This resets values of arg-i stacked by .St. ............................................................................. .Ox n Shifts a next output location to horizontal by n. ............................................................................. .Ox? [find](https://scholar.google.com/scholar?q=1%5D+Jack+E%2E+Shermer+and+Lortnda+L%2E+Cherry+%3A+The+Soft+Display+Word+Processor%2C+Computer%2C+Vol%2Ell%2C+No%2E12+p%2E39+%28DEC%2E+1978%29+2%5D+David+H+%2E+Hartke%2C+Warren+M%2E+Sterling%2C+and+Jack+E%2E+S+h+e+r+m+e+r+%3A+Design+of+a+Ra)

*Updated 2 November 2026*
