Article ID Journal Published Year Pages File Type
433495 Science of Computer Programming 2011 31 Pages PDF
Abstract

We describe a type system for a generative mechanism that generalizes the concept of generic types by combining it with a controlled form of reflection. This mechanism makes many code generation tasks possible for which generic types alone would be insufficient. The power of code generation features are carefully balanced with their safety, which enables us to perform static type checks on generator code. This leads to a generalized notion of type safety for generators.

Research highlights► We give a definition of type safety for generators. ► We introduce parameterized types with static reflection on the type parameters. ► We provide a complete formal type system for generators. ► Memoization solves problems of non-determinism in generators. ► The results can be applied to other languages.

Related Topics
Physical Sciences and Engineering Computer Science Computational Theory and Mathematics
Authors
, , ,