General_Purpose_Macrogenerator

General-purpose macro processor

General-purpose macro processor

Macro processor that is not tied to or integrated with a particular language or piece of software.


A general-purpose macro processor or general purpose preprocessor is a macro processor that is not tied to or integrated with a particular language or piece of software.

A macro processor is a program that copies a stream of text from one place to another, making a systematic set of replacements as it does so. Macro processors are often embedded in other programs, such as assemblers and compilers. Sometimes they are standalone programs that can be used to process any kind of text.

Macro processors have been used for language expansion (defining new language constructs that can be expressed in terms of existing language components), for systematic text replacements that require decision making, and for text reformatting (e.g. conditional extraction of material from an HTML file).

Examples of general purpose macro processors

More information Name, Year ...

See also


References

  1. Strachey, Christopher (October 1965). "A General Purpose Macrogenerator". Computer Journal. 8 (3): 225–241. doi:10.1093/comjnl/8.3.225.
  2. Waite, William M. (July 1970). "The mobile programming system: STAGE2". Communications of the ACM. 13 (7). New York, NY, USA: ACM: 415–421. doi:10.1145/362686.362691.
  3. Britten, Charles Randyl (2020-06-26). "Translation of 8080 Code to 8086 - Microsoft Translation of 8080 Code to 8086 and Other 16-Bit Processors". Archived from the original on 2021-07-23. Retrieved 2021-11-28. Stage2 was created by Prof William Waite at the University of Colorado in the late sixties as a major component of his mobile programming system, MPS. Stage2 uses a pattern matching algorithm to match input lines of text against a set of templates. Each template is the first line of a macro and when a match is recognized the code body of that macro is processed to produce output text, error messages, or create a constructed line that is submitted for further template matching. So the process is fully recursive and quite powerful in its capabilities for text transformation. In fact, it can be used to implement a programming language compiler.
  4. Cole, A. J. (1981). Macro Processors (2nd, revised ed.). CUP Archive. p. 254.
  5. Farber, D. J., 635 Assembly System - GAP. Bell Telephone Laboratories Computation Center (1964).
  6. "Gema". gema.sourceforge.net. Retrieved 2017-04-21.
  7. "GPP". logological.org/gpp. Retrieved April 21, 2017.
  8. "akiwi - Text Assembler". www.akiwi.co.uk. Retrieved 2017-04-21.
  9. Delord, Christophe. "PP - A generic Preprocessor (with Pandoc in mind)". cdsoft.fr. Retrieved 2017-10-17.
  10. "minimac". freshmeat.net. Retrieved 2017-04-21.
  11. "aa_macro". Retrieved 2017-11-24.
  12. "wtfm". Retrieved 2017-11-24.

Share this article:

This article uses material from the Wikipedia article General_Purpose_Macrogenerator, and is written by contributors. Text is available under a CC BY-SA 4.0 International License; additional terms may apply. Images, videos and audio are available under their respective licenses.