Integrating attribute grammar and functional programming language features

Loading...
Thumbnail Image

Persistent link to this item

Statistics
View Statistics

Journal Title

Journal ISSN

Volume Title

Title

Integrating attribute grammar and functional programming language features

Published Date

2011

Publisher

Type

Report

Abstract

While attribute grammars (AGs) have several features making them advantageous for specifying language processing tools, functional programming languages offer a myriad of features also well-suited for such tasks. Much other work shows the close relationship between these two approaches, often in the form of embedding AGs into lazy functional languages. This paper continues in this tradition, but in the other direction, by integrating various functional language features into AGs. Specifically we integrate rich static types (including parametric polymorphism, typed distinctions between decorated and undecorated trees, type inference, and generalized algebraic data-types) and pattern-matching, all in a manner that maintains familiar and convenient attribute grammar notations and especially their highly extensible nature.

Keywords

Description

Associated research group: Minnesota Extensible Language Tools

Related to

Replaces

License

Series/Report Number

Funding information

Isbn identifier

Doi identifier

Previously Published Citation

International Conference on Software Language Engineering (SLE 2011)

Suggested citation

Kaminski, Ted; Van Wyk, Eric. (2011). Integrating attribute grammar and functional programming language features. Retrieved from the University Digital Conservancy, https://hdl.handle.net/11299/217400.

Content distributed via the University Digital Conservancy may be subject to additional license and use restrictions applied by the depositor. By using these files, users agree to the Terms of Use. Materials in the UDC may contain content that is disturbing and/or harmful. For more information, please see our statement on harmful content in digital repositories.