Jump to content

Tombstone diagram: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Removed {{Citation style}} as I see no problems with the citation style
m Blank line
Line 18: Line 18:
[[Category:Self-hosting software]]
[[Category:Self-hosting software]]
[[Category:Program transformation]]
[[Category:Program transformation]]



{{Comp-sci-stub}}
{{Comp-sci-stub}}

Revision as of 19:12, 26 September 2016

Tombstone diagram representing an Ada compiler written in C that produces machine code.
Representation of the process of bootstrapping a C compiler written in C, by compiling it using another compiler written in machine code. To explain, the lefthand T is a C compiler written in C that produces machine code. The righthand T is a C compiler written in machine code that produces (the same) machine code. The diagram illustrates that this can be used to bootstrap the left T by using it to compile the compiler written in C.

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[where?] describing complicated processes for bootstrapping, porting, and self-compiling of compilers, interpreters, and macro-processors.[1]

T-diagrams were first introduced for describing bootstrapping and cross-compiling compilers by McKeeman et al. in 1971.[2] Melvin Conway described the broader concept before that with his UNCOL in 1958, to which Bratman added in 1961.[3] Later on, others, including P.D. Terry, gave an explanation and usage of T-diagrams in their textbooks on the topic of compiler construction.[1] T-diagrams are also now used to describe client-server interconnectivity on the World Wide Web.[4] A teaching tool TDiag has been implemented at Leipzig University, Germany.[5]

See also

References

  1. ^ a b Terry, 1997, Chapter 2 and Chapter 3
  2. ^ McKeeman et al., A Compiler Generator (1971)
  3. ^ H. Bratman, “An alternate form of the ´UNCOL diagram´“, Comm. ACM 4 (March 1961) 3, p. 142
  4. ^ Patrick Closhen, Hans-Juergen Hoffmann, et al. 1997: T-Diagrams as Visual Language to Illustrate WWW Technology, Darmstadt University of Technology, Darmstadt, Germany
  5. ^ Michael Hielscher, et al.: TDiag: Entwicklung und Ausführung eines T-Diagramms, in German