8. TrafoLa-H Reference Manual

Reinhold Heckmann and Georg Sander

Abstract

This chapter describes the transformation language TrafoLa-H of the PROSPECTRA system. It supports the definition of tree transformations as well as of transformation strategies. TrafoLa-H is mainly a functional language. Tree transformations are specified by first-order functions, whereas strategies may be defined by functions of higher order.

The first sections of this chapter define the constructs of TrafoLa-H by a simple denotational semantics, and illustrate them by many examples. The description is focused on the particularly powerful patterns of TrafoLa-H. The most advanced pattern operator allows to match and extract specific subtrees at arbitrary depth.

Then the type system of the language is described. It is derived from a conventional Hindley-Milner type system, but is more complex due to the operations of tree extraction and insertion. The chapter is concluded by a summary of the concrete syntax and the predefined system functions.

Reinhold Heckmann / heckmann@absint.com