@techreport{barklund1995meta-programming, author = {Barklund, Jonas and Boberg, Katrin and Dell'Acqua, Pierangelo and Veanes, Margus}, title = {Meta-programming with Theory Systems}, series = {UPMAIL Technical Report}, year = {1995}, month = {May}, abstract = {A theory system is a collection of interdependent theories, some if which stand in a meta/object relationship, forming an arbitrary num­ber of meta­levels. The main thesis of this chapter is that theory systems constitute a suitable formalism for constructing advanced ap­plications in reasoning and software engineering. The Alloy language for defining theory systems is introduced, its syntax is defined and a collection of inference rules is presented. A number of problems suit­able for theory systems are discussed, with program examples given in Alloy. Some current implementation issues and future extensions are discussed.}, url = {http://approjects.co.za/?big=en-us/research/publication/meta-programming-with-theory-systems/}, number = {106}, note = {This paper appears as a chapter in Meta­logics and Logic Program­ming, edited by K. Apt and F. Turini, and published by MIT Press in 1995. }, }