An optimization can be specified as sequential compositions of predefined transformation primitives. For each primitive, we can define soundness conditions which guarantee that th...
Many people have proposed adding transactions, or atomic blocks, to type-safe high-level programming languages. However, researchers have not considered the semantics of transacti...
This article provides an overview of a pattern-based programming system, named Panda, for automatic generation of high-level programming language code. Many code generation system...
Restricting destructive update to values of a distinguished reference type prevents functions from being polymorphic in the mutability of their arguments. This restriction makes it...
Attribute grammars may be seen as a (rather specialised) lazy or demand-driven programming language. The "programs" in this language take text or parse trees as input an...