
[ Bristol CS | Index | Research ]
Concurrency and Communications
A concurrent program consists of several processes that cooperate in performing
a task. Concurrent programs written in low-level languages like C can be very
difficult to write correctly, avoiding non-deterministic time-dependent bugs.
Declarative languages offer a much easier way to construct correct and reliable
concurrent programs in a safe and provable way.
- Languages and paradigms (Steve Gregory, Ian Holyer, Kerstin Eder)
- Investigate and compare languages and formalisms
for representing concurrent systems.
- Model time-dependent communicating systems in a declarative setting, and analyse their behaviour.
- Tempo: a declarative concurrent programming language.
- Implementation (Steve Gregory, Ian Holyer)
- Develop an implementation of a new language that extends C with features of Tempo.
- Algorithms (Steve Gregory, Ian Holyer)
- Investigate, implement and test concurrent algorithms in
declarative languages.
- Applications (Steve Gregory, Ian Holyer)