skip to main content
10.1145/41625.41632acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article
Free access

Macro-by-example: Deriving syntactic transformations from their specifications

Published: 01 October 1987 Publication History

Abstract

This paper presents two new developments. First, it describes a “macro-by-example” specification language for syntactic abstractions in Lisp and related languages. This specification language allows a more declarative specification of macros than conventional macro facilities do by giving a better treatment of iteration and mapping constructs. Second, it gives a formal semantics for the language and a derivation of a compiler from the semantics. This derivation is a practical application of semantics-directed compiler development methodology.

References

[1]
Felleisen, M. "Transliterating Prolog into Scheme," Indiana University Computer Science Department Technical Report No. 182, October, 1985.
[2]
Foderaxo, .I.K., Sklower, K.L., and Layer, K. The Franz Lisp Manual, June, 1983.
[3]
Felleisen, M., and Friedman, D.P., "A Closer Look at Export and Import Statements," Computer Languages 1~ (1986), 20-37.
[4]
Friedmma, D.P., Haynes, C.T., and Wand, M. "Obtaining Coroutines with Continuations," Computer Languages 1I (1986), to appear.
[5]
Jorring, U., and Sherlis, W.L. "Compilers and Staging Transformations," Conf. Ree. 19th Annual A CM Symposium on Principles of Programming Languages (19s6),
[6]
Kohlbecker, E., Syntactic Extensions in the Programming Language Lisp, PhD dissertation, Indiana University, August, 1986.
[7]
Kohlbecker, E., Friedrnah, D.P., Felleisen, M., and Dubs, B. "Hygienic Macro Expansion," Proceedings 1986 A CM Conference on Lisp and Functional Programming, 151-161.
[8]
Rees, J., and Clinger, W., eds. "Revised3 Report on the Algorithmic Language Scheme," SIGPLAN Notices, to appear.
[9]
Steele, G.L. and Sussman, G.J. "The Revised Report on SCHEME," Mass. Inst. of Tech. Artif. Intell. Memo No. 452, Cambridge, MA (January, 1978).
[10]
Wand, M. "Deriving Target Code as a Representation of Continuation Semantics," A CM Trans. or~ Prog. Lang. and Systems 4, 3 (July, 1982) 496-517.
[11]
Wand, M. "A Semantic Prototyping System," Proe. AGM SIGPLAN 'St Compiler Construction Conference (1984), 213-221.
[12]
Wand, M. "The Semantics of Backtracking," Brandeis University Computer Science Department Colloquium, January, 1985 (unpublished).

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
POPL '87: Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
October 1987
326 pages
ISBN:0897912152
DOI:10.1145/41625
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 October 1987

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

POPL87
Sponsor:

Acceptance Rates

POPL '87 Paper Acceptance Rate 29 of 108 submissions, 27%;
Overall Acceptance Rate 824 of 4,130 submissions, 20%

Upcoming Conference

POPL '25

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)85
  • Downloads (Last 6 weeks)9
Reflects downloads up to 06 Nov 2024

Other Metrics

Citations

Cited By

View all

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media