|
|
|
RESEARCH INTERESTS
GARBAGE COLLECTION
My chief area of interest is dynamic memory management - this grew out of work on lazy functional programming languages and particularly their efficient implementation.
THE GARBAGE COLLECTION PAGE
My Garbage Collection pages include
DISTRIBUTED GARBAGE COLLECTION
Recently I have been working with Helena Rodrigues on garbage collection for
distributed systems. We use a reference listing scheme
augmented by partial tracing in order to collect distributed
garbage cycles. Our collector is designed to be flexible thereby allowing
efficiency, expediency and fault-tolerance to be traded against
completeness. The algorithm places no overhead on local collectors and
suspends local mutators only briefly. Partial tracing of the distributed
graph involves only objects thought to be part of a garbage cycle: no
collaboration with other processes is required.
RECENT TALKS
Here is the Powerpoint show
of my talk on garbage
collection to the BCS Advanced Progamming
Specialist Group at the IBM South Bank Centre on 14 October 1999.
On 1 November 1999, Eric Jul
and I gave a tutorial
on garbage collection at OOPSLA'99 in Denver.
We shall also be giving a tutorial on
garbage collection on June 13 at ECOOP 2000 in Sophia Antipolis /
Cannes, France
LAZY FUNCTIONAL LANGUAGES
My interest in garbage collection came from earlier work on the
efficient implementation of lazy functional languages. An interesting
example is the Three Instruction Machine, an abstract machine for
lazy functional languages, which makes heavy demands upon the the memory
management system. In particular the garbage collector must ensure that
environment sharing does not lead to space leaks. Stephen Thomas and I
developed an efficient
and precise garbage collector tailored to the requirements of each
closure (code-environment pair). The collector uses continuations to avoid
all interpretive overheads and scavenges depth-first without using
additional space by threading the stack through already visited
environment slots.
ELECTRONIC PUBLISHING
I led the Kent team in the JISC-funded Infobike/JournalsOnline
project (now ingentaJournals). The
project consortium brought together publishers, librarians, computer
scientists and industry to provide full-text access to journals.
FONTS AND STUFF
I have also taught courses in
Electronic Publishing and my fonts for
the Z specification language are freely available for the Macintosh
and Windows and can be adapted to be used with Unix. Both PostScript Type
1 and TrueType fonts are included.
POSTGRADUATES
I am particularly keen to hear from potential research students with
interests in memory management. Particular areas of interest include GC
for distributed and for persistent systems, measurement and visualisation
of heap based allocation, flexible GC, VM support for GC and cache
behaviour of GCed programs.
Finally, I am a member of the following research groups:
RECENT PUBLICATIONS
The table
of contents, preface, bibliography and errata are available on-line
for
Other recent publications can be
found at:
COURSES I LECTURE ON
| CO311
(*) |
Functional Programming and Logic |
| CO500
(T200) |
Machine Languages and Compiling Techniques |
| CO600
(T310) |
Project |
CLASSES I SUPERVISE
TUTEES
COURSE CONVENER FOR...
| Convenor |
CO500
(T200) |
Machine Languages and Compiling Techniques |
We hope that these pages are useful to visitors both from within the university and from without. We
continuously strive to improve their structure and content. If you have any suggestions for improvement,
please let us know. CS Webmasters
|
|