About Me
I am an associate professor at the School of Computing at Dublin City University, Dublin, Ireland.
I joined DCU at the start of 1998. Previously, I was a lecturer in the School of Computing and Mathematics at Keele University in England. I did my Ph.D. in the Department of Computing Science and Mathematics at the University of Stirling in Scotland.
Contact
Here’s my contact information.
Teaching and Learning
I teach the following modules:

CA648 Formal Programming
The resources for these courses can be found on Loop.
Research
My early research work was in the areas of program analysis and program transformation. This included the first extension of the deforestation algorithm to higherorder languages. Similar techniques were then used in an extension of the positive supercompilation algorithm to higherorder languages. A new transformation algorithm called the distillation algorithm was then built on top of positive supercompilation. This is a major advance over previous approaches, and gives orders of magnitude improvement in both the time and space usage of the transformed programs over what can be achieved using deforestation or positive supercompilation. A hierarchy of program transformers was then developed, where the transformer at each level is built on top of those at lower levels, and more powerful transformations are obtained as we move up through this hierarchy. It turns out that these transformers can be applied in many different areas:
Theorem Proving
Automatic Program Construction
Program Verification
Program Improvement
Program Termination Checking
Program Parallelisation
Program Complexity Analysis
Energy Efficient Computing
Project Ideas
Here are some project ideas for undergraduate projects and M.Sc. practicums.