Abstract. Linear type systems allow destructive operations such as object deallocation and imperative updates of functional data structures. These operations and others, such as th...
Frederick Smith, David Walker, J. Gregory Morriset...
Neither the C nor the C++ languages support reflection and their meta-programming capabilities are very limited. Both of these problems can be addressed by adding a preprocessing...
John Kenyon, Frederick C. Harris Jr., Sergiu M. Da...
Debugging is one of the essential parts of the software development cycle. However, the usual debugging techniques used in imperative languages such as the step by step execution ...
A partial evaluator is an automatic program transformation tool. Given as input a general program and part of its input, it can produce a specialized version. If the partial evalu...
: In this paper we present the language Monaco, which is a DSL for programming event-based, reactive automation solutions. The main purpose of the language is to bring automation p...