Advertisement

Extending Camelot with Mutable State and Concurrency

  • Stephen Gilmore
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3038)

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.

Keywords

Java Virtual Machine Concrete Syntax Free List Functional Programming Language Java Thread 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

References

  1. 1.
    Hofmann, M.: A type system for bounded space and functional in-place update. Nordic Journal of Computing 7(4), 258–289 (2000)zbMATHMathSciNetGoogle Scholar
  2. 2.
    Hofmann, M., Jost, S.: Static prediction of heap space usage for firstorder functional programs. In: Proc. 30th ACM Symp. on Principles of Programming Languages (2003)Google Scholar
  3. 3.
    Wolverson, N.: O’Camelot: adding objects to a resource-aware functional language. In: On-site proceedings of the Fourth Symposium on Trends in Functional Programming, Edinburgh, Scotland (September 2003)Google Scholar
  4. 4.
    Biagioni, E., Cline, K., Lee, P., Okasaki, C., Stone, C.: Safe-forspace threads in Standard ML. Higher-Order and Symbolic Computation 11(2), 209–225 (1998)zbMATHCrossRefGoogle Scholar
  5. 5.
    Lee, P.: Implementing threads in Standard ML. In: Launchbury, J., Sheard, T., Meijer, E. (eds.) AFP 1996. LNCS, vol. 1129, pp. 115–130. Springer, Heidelberg (1996)Google Scholar
  6. 6.
    Stark, I.: Thimble — Threads for MLj. In: Proceedings of the First Scottish Functional Programming Workshop, number RM/99/9 in Department of Computing and Electrical Engineering, Heriot-Watt University, Technical Report, 337–346 (1999)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Stephen Gilmore
    • 1
  1. 1.Laboratory for Foundations of Computer ScienceThe University of EdinburghEdinburghScotland

Personalised recommendations