Specification and automatic prototype implementation of polymorphic objects in Turing using the TXL dialect processor

Object-oriented dialects of existing programming languages are often implemented using a preprocessor that translates from the dialect to an equivalent program in the original programming language. Unfortunately, the nature of the preprocessing done by these implementations is hidden in the ad hoc algorithms of the preprocessors themselves, except as demonstrated by examples. An attempt to catalogue and generalize these syntactic transformations using a simple set of applicative transformation rules expressed in the TXL dialect description language is described. Example transformation rules for implementing object types and parametric polymorphism in an object-oriented dialect of the Turing programming language are given. These rules easily generalize to other languages of the Pascal family and have been used to automatically implement Objective Turing.<<ETX>>