Keywords: dataflow analysis, escape analysis, closure conversion, modules, regular trees.
Abstract: We describe how to separately analyze a program context and a term substitution in an untyped higher-order language, in order to perform selective closure conversion. Each node of the parse trees for the context and the substitution is annotated by solving constraints; the solutions may be considered regular trees. A translation merges the separate annotations into annotations for the substituted context. Substituting the transformed term into the transformed context is equivalent to transforming the substituted context. Using earlier results for selective closure conversion, the separate transformation is shown correct.Previous | Index | Next