Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article
Free access

Macro processing in high-level languages

Published: 01 November 1992 Publication History

Abstract

A macro language is proposed. It enables macro processing in high-level programming languages. Macro definitions in this language refer to the grammars of the respective programming languages. These macros introduce new constructs in programming languages. It is described how to automatically generate macro processors from macro definitions and programming language grammars written in the lex-yacc format. Examples of extending high-level languages by means of macros are given.

References

[1]
[1] Aho, A.V., Sethi, R., Ullman, J.D., Compilers. Principles, Techniques, and Tools, Addison-Wesley Publ. Co., 1986.
[2]
[2] American National Standard for Information Systems, Programming Language C, ANSI X3.159-1989, American National Standard Institute, Inc., NY 1990.
[3]
[3] Barendregt, H.P., The Lambda Calculus: Its Syntax and Semantics, Elsevier, 1981.
[4]
[4] Barnes, J.G.P., Programming in Ada plus Language Reference Manual, Addison-Wesley Publ. Co., 1991.
[5]
[5] Boyle, J.M., Abstract Programming and Program Transformations - An Approach to Reusing Programs, Software Reusability, v. 1, Addison-Wesley Publ. Co., 1989, 361-413.
[6]
[6] Charniak, E., Riesbeck, C.K., McDermott, D.V., Meehan, J.R., Artificial Intelligence Programming, Lawrence Erlbaum Associates, 1987.
[7]
[7] Donnelly, C., Stallman, R., Bison Reference Manual, Free Software Foundation, 1988.
[8]
[8] Ellis, M., Stroustrup, B., The Annotated C++ Reference Manual, Addison-Wesley Publ. Co., 1990.
[9]
[9] Grosch, J., Generators for High-Speed Front Ends, Lecture Notes in Computer Science, v. 371, 1989, 81-92.
[10]
[10] High C Language Extensions Manual, MetaWare Inc., 1990.
[11]
[11] Jensen, K., Wirth, N., Pascal User Manual and Report, Springer-Verlag, 1991.
[12]
[12] Johnson, S.C., Yacc - Yet Another Compiler-Compiler, AT&T Bell Laboratories, 1975.
[13]
[13] Kuuluvainen, I., Vanttinen, M., Koskinen, P., The Action-State Diagram: A Compact Finite State Machine Representation for User Interfaces and Small Embedded Reactive Systems, IEEE Transactions on Consumer Electronics, v. 37, 1991, #3, 651-658.
[14]
[14] Lesk, M.E., Schmidt, E., Lex - A Lexical Analyzer Generator, AT&T Bell Laboratories, 1975.
[15]
[15] Mason, T., Brown, D., lex & yacc, O'Reilly & Associates, 1990.
[16]
[16] MetaTool Specification-Driven-Tool Builder, User Manual, AT&T, 1990.
[17]
[17] Mischel, J., Dusting off COBOL, Computer Language, v. 8, 1991, #11, 41-46.
[18]
[18] Park, J.C.H., y+: A Yacc Preprocessor for Certain Semantic Actions, SIGPLAN Notices, v. 23 (1988), #6, 97- 106.
[19]
[19] Paxson, V., Flex - Manual Pages, 1990.
[20]
[20] Steele, G., Common Lisp: The Language, Digital Press, 1984.
[21]
[21] UNIX Programmer's Manual, AT&T Bell Laboratories, 1983.

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGPLAN Notices
ACM SIGPLAN Notices  Volume 27, Issue 11
Nov. 1992
86 pages
ISSN:0362-1340
EISSN:1558-1160
DOI:10.1145/141018
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 November 1992
Published in SIGPLAN Volume 27, Issue 11

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 463
    Total Downloads
  • Downloads (Last 12 months)135
  • Downloads (Last 6 weeks)15
Reflects downloads up to 28 Dec 2024

Other Metrics

Citations

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media