Extending resource-bounded functional programming languages with mutable state and concurrency

Stephen Gilmore, Kenneth MacKenzie, Nicholas Wolverson

Abstract


Camelot is a resource-bounded functional programming language which compiles to Java byte code to run on the Java Virtual Machine. We extend Camelot to include language support for Camelot-level threads which are compiled to native Java threads. We extend the existing Camelot resource-bounded type system to provide safety guarantees about the heap usage of Camelot threads. We demonstrate the usefulness of our concurrency extensions to the language by implementing a multi-threaded graphical network chat application which could not have been expressed as naturally in the sequential, object-free sublanguage of Camelot which was previously available.

References



Full Text: PDF

Refbacks

  • There are currently no refbacks.