Comparing Programming Paradigms

The aim of this research (the EFOOL project) is to objectively compare the usefulness of different programming paradigms for a given problem domain. The research was carried out by Dr Rachel Harrison and Mr Lins Samaraweera as an EPSRC funded project.

The chosen problem domain was image processing, which provides a wide range of algorithms to compare object oriented and functional programming paradigms. Consultants for the project are Dr Paul Lewis and Dr Mark Dobie

A set of representative algorithms were selected and implemented in an object oriented language (C++) and a functional language (SML). Details of the design, implementation and testing processes were recorded. The imagelib image processing library was used as a reference implementation for some of the algorithms.

The statistics collected during the controlled development were compared with automatically calculated statistics from the finished code. Some correlations were found, which suggests that it may be possible to draw conclusions about the reliability of the code from automatically calculated statistics. Detailed results can be found in the publications associated with this work.

Text and images by Mark Dobie, back to Mark's home page