In computing, tombstone diagrams (or T-diagrams) consist of a set of “puzzle pieces” representing compilers and other related language processing programs. They are used to illustrate and reason about transformations from a source language (left of T) to a target language (right of T) realised in an implementation language (bottom of T). They are most commonly found describing complicated processes for bootstrapping, porting, and self-compiling of compilers, interpreters, and macro-processors.[1]
![](http://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/T-diagram.png/220px-T-diagram.png)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/2/21/Bootstrapping-t-diagram.png/220px-Bootstrapping-t-diagram.png)
T-diagrams were first used for describing bootstrapping and cross-compiling compilers by Harvey Bratman in 1961,[2] who reshaped the diagrams originally introduced by Strong et al. (1958) to illustrate UNCOL. [3] Later on, others, including McKeeman et al. [4] and P.D. Terry,[1] explained the usage of T-diagrams with further detail. T-diagrams are also now used to describe client-server interconnectivity on the World Wide Web.[5] A teaching tool TDiag has been implemented at Leipzig University, Germany.[6]
See also
editReferences
edit- ^ a b Terry, 1997, Chapter 2 and Chapter 3
- ^ Bratman, Harvey (March 1961). "A alternate form of the "UNCOL diagram"". Communications of the ACM. 4 (3): 142. doi:10.1145/366199.366249. Retrieved 21 February 2022.
- ^ Strong, J.; Wegstein, J.; Tritter, A.; Olsztyn, J.; Mock, O.; Steel, T. (August 1958). "The Problem of Programming Communication with Changing Machines: A Proposed Solution". Communications of the ACM. 1 (8): 12–18. doi:10.1145/368892.368915. Retrieved 21 February 2022.
- ^ McKeeman et al., A Compiler Generator (1971)
- ^ Patrick Closhen, Hans-Juergen Hoffmann, et al. 1997: T-Diagrams as Visual Language to Illustrate WWW Technology, Darmstadt University of Technology, Darmstadt, Germany
- ^ Michael Hielscher, et al.: TDiag: Entwicklung und Ausführung eines T-Diagramms, in German