We are keen to recruit new research students. We have a list of potential research projects.
November 2008: We organise the termly Fun in the Afternoon on 17 November here at Canterbury.
Former members: Clara Benac-Earle (Profesor Visitante at the Universidad Carlos III of Madrid, Spain), Florence Benoy, Mark Callanan, Tony Daniels (IBM Hursley Labs), Matt Jadud, Rodziah Latih, Gyorgy Orosz, Leonid Timochouk (afterwards St Andrews), Yong Luo (Bank of China), Tamas Nagy (Erlang Consulting), Axel Simon, Nik Sultana, Melinda Toth, Aniko Vig (Erlang Consulting).
FORSE: Formally-Based Tool Support for Erlang Development (Simon Thompson, Huiqing Li, others) An EPSRC-sponsored joint project with the University of Sheffield, to build tools to support the working Erlang programmer, based on our existing work in refactoring Haskell programs and verification of Erlang programs.
Refactoring functional programs (Simon Thompson, Chris Brown, Huiqing Li, Claus Reinke) Refactoring is `improving the design of existing code', by changing the structure of programs without changing their functionality. It has become popular in the object-oriented and extreme programming communities, in the form of documented refactoring sequences and tool support for refactoring. We explore the wealth of functional program transformation research to bring refactoring to Haskell programmers.
Tracing Functional Programs (Olaf Chitil,Thomas Davie, Yong Luo) For debugging and program comprehension it is very useful to see what happens during the computation of a program. The compositional semantics of functional languages allows small and expressive traces that can be viewed in many different ways. The further development of the Haskell tracer Hat is at the heart of this project.
Robotlang (Olaf Chitil,Thomas Carlson) Robotlang is a small concurrent functional programming language and implementation. It is a Scheme-like language with Erlang-like concurrency and the ability to interact with the "Player" robotics simulation tool. The implementation is written in C, designed to be portable and have a compact binary able to fit onto embedded systems like the Lego Mindstorms robots.
Vital (Keith Hanna) Vital is a visual interactive implementation of (a subset of) Haskell intended for general use in scientific/financial applications. In Vital, the visual representation of Haskell datatypes is determined by a user-defined stylesheet and the structure/content of data structures can edited by mouse-based copy-and-paste gestures.
Pivotal (Keith Hanna) This project has similar aims to the Vital project, but, unlike Vital, this one is implemented entirely in Haskell.