Functory: A Distributed Computing Library for Objective Caml

  • Jean-Christophe Filliâtre
  • K. Kalyanasundaram
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7193)


We present Functory, a distributed computing library for Objective Caml. The main features of this library include (1) a polymorphic API, (2) several implementations to adapt to different deployment scenarios such as sequential, multi-core or network, and (3) a reliable fault-tolerance mechanism. This paper describes the motivation behind this work, as well as the design and implementation of the library. It also demonstrates the potential of the library using realistic experiments.


Total Execution Time Functional Programming Functional Language Master Function Speedup Ratio 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
  2. 2.
  3. 3.
    The Erlang Programming Language,
  4. 4.
    The GNU Multiple Precision Arithmetic Library,
  5. 5.
    Parallel Symbolic Computation 2010 (PASCO) (2010),
  6. 6.
    Dean, J., Ghemawat, S.: MapReduce: Simplified Data Processing on Large Clusters. In: OSDI, pp. 137–150 (2004)Google Scholar
  7. 7.
    Filliâtre, J.-C., Marché, C.: The Why/Krakatoa/Caduceus Platform for Deductive Program Verification. In: Damm, W., Hermanns, H. (eds.) CAV 2007. LNCS, vol. 4590, pp. 173–177. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  8. 8.
    Jansen, J.M., Plasmeijer, R., Koopman, P., Achten, P.: Embedding a Web-based Workflow Management System in a Functional Language. In: Proceedings of the Tenth Workshop on Language Descriptions, Tools and Applications, LDTA 2010, pp. 7:1–7:8. ACM, New York (2010)Google Scholar
  9. 9.
    Leroy, X.: OCamlMPI: Interface with the MPI Message-passing Interface,
  10. 10.
    Mandel, L., Maranget, L.: Programming in JoCaml (Tool Demonstration). In: Gairing, M. (ed.) ESOP 2008. LNCS, vol. 4960, pp. 108–111. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  11. 11.
    Murphy VII., T., Crary, K., Harper, R.: Type-Safe Distributed Programming with ML5. In: Barthe, G., Fournet, C. (eds.) TGC 2007. LNCS, vol. 4912, pp. 108–123. Springer, Heidelberg (2008)Google Scholar
  12. 12.
    Padioleau, Y.: A Poor Man’s MapReduce for OCaml (2009),
  13. 13.
    Pointon, R.F., Trinder, P.W., Loidl, H.-W.: The Design and Implementation of Glasgow Distributed Haskell. In: Mohnen, M., Koopman, P. (eds.) IFL 2000. LNCS, vol. 2011, pp. 53–70. Springer, Heidelberg (2001)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Jean-Christophe Filliâtre
    • 1
    • 2
  • K. Kalyanasundaram
    • 1
    • 2
  1. 1.CNRS, LRI, Univ Paris-Sud 11OrsayFrance
  2. 2.INRIA Saclay - Île-de-France, ProValOrsayFrance

Personalised recommendations