Design and implementation of a multi-stage, object-oriented programming language
Neverov, Gregory Michael (2007) Design and implementation of a multi-stage, object-oriented programming language. PhD thesis, Queensland University of Technology.
Multi-stage programming is a valuable technique for improving the performance of computer programs through run-time optimization. Current implementations of multi-stage programming do not support run-time type introspection, which is a significant feature of modern object-oriented platforms such as Java and C#. This is unfortunate because many programs that use type introspection in these languages could be improved with multi-staging programming.
The aim of this research is to investigate the interaction between multi-stage programming and object-oriented type introspection. This is done by the invention of a new programming language that is a multi-stage extension to C#. The language is capable of expressing traditional multi-stage programs as well as a new style of multi-stage programs that incorporate type introspection, most notably polytypic algorithms such as object serialization. A compiler for the language is implemented and freely available. The language is significant because it is the first object-oriented, multi-stage language; the first attempt to combine type introspection with multi-stage programming; and the first exploration of polytypic programming in a multi-stage context.
Impact and interest:
Citation counts are sourced monthly from and citation databases.
Citations counts from theindexing service can be viewed at the linked Google Scholar™ search.
|Item Type:||QUT Thesis (PhD)|
|Supervisor:||Roe, Paul & Kelly, Wayne|
|Keywords:||programming languages, multi-stage programming, object-oriented programming, meta programming, run-time code generation, polytypic programming, type systems|
|Divisions:||Past > QUT Faculties & Divisions > Faculty of Science and Technology
Past > Schools > School of Software Engineering & Data Communications
|Department:||Faculty of Information Technology|
|Institution:||Queensland University of Technology|
|Copyright Owner:||Copyright Gregory Michael Neverov|
|Deposited On:||03 Dec 2008 04:05|
|Last Modified:||28 Oct 2011 19:49|
Repository Staff Only: item control page