Proving the Correctness of MiniJava Refactorings

The great mathematician and computer scientist, Christopher Strachey, once observed, that, if you can define a programming language’s value domain, you have already said a considerable amount about its semantics. Indeed, if we extend the idea of a value domain, (or a denotational semantics for mapping values in a programming language to their values), to […]

Continue reading

Game-Based Learning for Outreach

The School of Computer Science runs a variety of outreach events throughout each academic year. Each event comprises a number of computing-related activities. These activities range from traditional lecture-style talks to lectures with an interactive element to practical programming sessions. The activities are designed to educate and engage school pupils from a variety of backgrounds, […]

Continue reading