JoCaml: A language for concurrent distributed and mobile programming

29Citations
Citations of this article
29Readers
Mendeley users who have this article in their library.
Get full text

Abstract

In these lecture notes, we give an overview of concurrent, distributed, and mobile programming using JoCaml. JoCaml is an extension of the Objective Caml language. It extends OCaml with support for concurrency and synchronization, the distributed execution of programs, and the dynamic relocation of active program fragments during execution. The programming model of JoCaml is based on the join calculus. This model is characterized by an explicit notion of locality, a strict adherence to local synchronization, and a natural embedding of functional programming à la ML. Local synchronization means that messages always travel to a set destination, and can interact only after they reach that destination; this is required for an efficient asynchronous implementation. Specifically, the join calculus uses ML's function bindings and pattern-matching on messages to express local synchronizations. The lectures and lab sessions illustrate how to use JoCaml to program concurrent and distributed applications in a much higher-level fashion than the traditional threads-and-locks approach. © Springer-Verlag Berlin Heidelberg 2003.

Cite

CITATION STYLE

APA

Fournet, C., Le Fessant, F., Maranget, L., & Schmitt, A. (2004). JoCaml: A language for concurrent distributed and mobile programming. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2638, 129–158. https://doi.org/10.1007/978-3-540-44833-4_5

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free