Higher-order Transformations and Type Simulations
Martin C. Henson
Abstract
Martin C. Henson
Abstract
We examine higher-order program transformations in the context of a typed, pattern-directed, higher-order, lazy functional language. We introduce the notions of higher-order accumulation and type simulation as transformational techniques. Our main illustration of these techniques concerns the transformation of a description of a small programming language into a code generator. In this example we show how our techniques tackle important questions regarding the circumstances under which data, in a functional program, can be destructively updated with impunity.
OpenAlex reports 3 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
We examine higher-order program transformations in the context of a typed, pattern-directed, higher-order, lazy functional language. We introduce the notions of higher-order accumulation and type simulation as transformational techniques. Our main illustration of these techniques concerns the transformation of a description of a small programming language into a code generator. In this example we show how our techniques tackle important questions regarding the circumstances under which data, in a functional program, can be destructively updated with impunity.
Key concepts: Computer science, Functional programming, Programming language, Transformational leadership, Order (exchange), Transformation (genetics), Model transformation, Program transformation