Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

TMG (language)

From Wikipedia, the free encyclopedia
Compiler-compiler
TMG
Designed byRobert M. McClure
DeveloperRobert M. McClure
First appeared1963; 62 years ago (1963)[1]
Dialects
Unix dialect (byDouglas McIlroy)
Influenced
TROL (byDonald Knuth)[2]
Unix TMG
TMG program with highlighted syntax
DeveloperDouglas McIlroy
First appeared1969; 56 years ago (1969)
Filename extensions.t
Dialects
PDP-7 version,PDP-11 version
Influenced by
ALGOL 68,[3]B,PL/I,SNOBOL[4]
Influenced
B,Yacc

In computing,TMG (Transmogrifier) is arecursive descentcompiler-compiler[5] developed by Robert M. McClure and presented in 1965.[6][7][8]

History

[edit]

TMG ran on systems includingOS/360 and earlyUnix.[9] It was used to build EPL, an early version ofPL/I.[9]

Douglas McIlroy ported TMG to an early version of Unix. According toKen Thompson, McIlroy wrote TMG in TMG on a piece of paper and "decided to give his piece of paper his piece of paper," hand-compilingassembly language that he entered and assembled on Thompson'sUnix system running onPDP-7.[10] Thompson used TMG in 1970 as a tool to offerFortran, but due to memory limitations of PDP-7 ended up creating theB programming language which was much influenced byBCPL.[6]

The recursive descent algorithm of TMG was studied formally by Alexander Birman andJeffrey Ullman. The formal description of the algorithms was namedTMG recognition scheme (or simplyTS).[11]

See also

[edit]

References

[edit]
  1. ^"Early Translator Writing Systems - Brooker-Morris Compiler Compiler 1966".Atlas Computer Laboratory.Archived from the original on 31 January 2020. Retrieved2020-04-12.TMG, ... comes later but appears to have not been influenced by the earlier systems [Alick Glennie's 1960 Syntax Machine, Ned Irons 1960 PSYCO compiler, or Brooker and Morris's 1960 Compiler-Compiler].
  2. ^Knuth, Donald (1990)."The Genesis of Attribute Grammars"(PDF). In P. Deransart; M. Jourdan (eds.).Proceedings of the International Conference on Attribute Grammars and Their Applications (Paris, France). Lecture Notes in Computer Science. Vol. 461. New York: Springer-Verlag. pp. 1–12.doi:10.1007/3-540-53101-7_1.ISBN 978-3-540-53101-2.
  3. ^Ritchie, Dennis M. (April 1993).The Development of the C Language(PDF). Association for Computing Machinery, Inc.
  4. ^McIlroy, M. D. (September 13, 1972).A Manual for the Tmg Compiler-writing Language (Technical report). Murray Hill, New Jersey: Bell Laboratories. Retrieved31 January 2020.
  5. ^"M. Douglas McIlroy".Dartmouth College.Archived from the original on 1 February 2020. Retrieved2020-04-12.Some things I have worked on: Languages and compilers: macros, Lisp, PL/I, TMG (a compiler-compiler), regular expressions; influenced Snobol, Altran, C++ ...
  6. ^abRitchie, Dennis M."The Evolution of the Unix Time-sharing System*". Archived fromthe original on 8 September 2014. Retrieved9 April 2004.Every program for the original PDP-7 Unix system was written in assembly language, and bare assembly language it was—for example, there were no macros. Moreover, there was no loader or link-editor, so every program had to be complete in itself. The first interesting language to appear was a version of McClure's TMG that was implemented by McIlroy. Soon after TMG became available, Thompson decided that we could not pretend to offer a real computing service without Fortran, so he sat down to write a Fortran in TMG. As I recall, the intent to handle Fortran lasted about a week. What he produced instead was a definition of and a compiler for the new language B.
  7. ^McClure, R.M. (1965)."TMG—A Syntax-Directed Compiler". In L. Winner (ed.).Proceedings of the 1965 20th national conference (ACM '65). ACM. pp. 262–274.doi:10.1145/800197.806050.ISBN 978-1-4503-7495-8.S2CID 44606611.
  8. ^McIlroy, M. D. (1987).A Research UNIX Reader: Annotated Excerpts from the Programmer's Manual, 1971-1986(PDF) (Technical report). CSTR. Bell Labs. 139.Archived(PDF) from the original on 11 April 2020.Doug (M. Douglas) McIlroy exercised the right of a department head to muscle in on the original two-user PDP-7 system. Later he contributed an eclectic bag of utilities:tmg for compiler writing, speak for reading text aloud,diff, andjoin. He also collected dictionaries and made tools to use them:look (v7, after a model by Ossanna),dict (v8), andspell (v7). ... On the tiny PDP-7 the assembler was supplemented by tmg, Doug McIlroy's version of Bob McClure's compiler-compiler. ... V2 saw a burst of languages: a newtmg, ... and Ritchie's firstC,
  9. ^ab"TMG".www.multicians.org.Archived from the original on 2 January 2020. Retrieved2020-04-12.... TMG that runs under OS360 (sic) ... Mike Green took Bob McClure's 7090/7040 version and implemented the compiler-compiler on the 360; ... TMG was the compiler definition tool used by Ken Thompson to write the compiler for theB language on his PDP-7 in 1970. B was the immediate ancestor ofC.
  10. ^Ken Thompson (6 May 2019)."VCF East 2019 -- Brian Kernighan interviews Ken Thompson".YouTube. Retrieved2019-10-28.
  11. ^Birman, Alexander;Ullman, Jeffrey D (1973). "Parsing algorithms with backtrack".Information and Control.23 (1). Elsevier B.V:1–34.doi:10.1016/S0019-9958(73)90851-6.ISSN 0019-9958.

External links

[edit]
Retrieved from "https://en.wikipedia.org/w/index.php?title=TMG_(language)&oldid=1309341191"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp