The Principles of Programming research group at Maynooth University specialises in the static and dynamic analysis of object-oriented programs and programming languages. We exploit a variety of techniques, such as parsing, bytecode analysis, software metrics, meta-modelling and program verification to model software systems in order to increase comprehensibility and reliability. Our work has applications in program comprehension, program verification and model-driven engineering.
The group's interests extend from software engineering tools and techniques, right through programming language design, down to the implementation of compilers and programming language processors. We have a strong interest in the formal underpinnings of programming languages, and much of our work has links with formal methods in program design and analysis, such as software specification, refinement, verification and programming language semantics.
Some of our recent publications are posted in the sidebar on the right, and are available from the members webpages.
Formalised EMFTVM bytecode language for sound verification of model transformations
Modularising and Promoting Interoperability for Event-B Specifications using Institution Theory
Evaluating the Use of a General-Purpose Benchmark Suite for Domain-Specific SMT-solving
A sound execution semantics for ATL via translation validation
Creating Formal Specifications with Analogical Reasoning
An early completion algorithm: Thue's 1914 paper on the transformation of symbol sequences