Abstract
We present a case-study of using OCaml within a large product development project, focussing on both the technical and non-technical issues that arose as a result. We draw comparisons between the OCaml team and the other teams that worked on the project, providing comparative data on hiring patterns and cross-team code contribution.
Supplemental Material
- }}P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauer, I. Pratt, and A. Warfield. Xen and the art of virtualization. In Proceedings of the 19th ACM Symposium on Operating Systems Principles (SOSP), pages 164--177, New York, NY, USA, 2003. ACM Press. Google Scholar
Digital Library
- }}B. Canou, V. Balat, and E. Chailloux. O’Browser: Objective Caml on browsers. In Proceedings of the 2008 ACM SIGPLAN workshop on ML, pages 69--78, New York, NY, USA, 2008. ACM. Google Scholar
Digital Library
- }}C. Clark, K. Fraser, S. Hand, J. G. Hansen, E. Jul, C. Limpach, I. Pratt, and A. Warfield. Live migration of virtual machines. In Proceedings of the 2nd Symposium of Networked Systems Design and Implementation, May 2005. Google Scholar
Digital Library
- }}P. Cuoq, J. Signoles, P. Baudin, R. Bonichon, G. Canet, L. Correnson, B. Monate, V. Prevosto, and A. Puccetti. Experience report: OCaml for an industrial-strength static analysis framework. In ICFP ’09: Proceedings of the 14th ACM SIGPLAN international conference on Functional programming, pages 281--286, New York, NY, USA, 2009. ACM. Google Scholar
Digital Library
- }}M. DeBergalis, P. Corbett, S. Kleiman, A. Lent, D. Noveck, T. Talpey, and M. Wittle. The Direct Access File System. In Proceedings of the 2nd USENIX Conference on File and Storage Technologies, pages 175--188, Berkeley, CA, USA, 2003. USENIX Association. Google Scholar
Digital Library
- }}J. Donham. OCamlJS, July 2010. http://jaked.github.com/ocamljs.Google Scholar
- }}T. Gazagnaire and V. Hanquez. Oxenstored: an efficient hierarchical and transactional database using functional programming with reference cell comparisons. In ICFP ’09: Proceedings of the 14th ACM SIGPLAN international conference on Functional programming, pages 203--214, New York, NY, USA, 2009. ACM. Google Scholar
Digital Library
- }}T. Gazagnaire and A. Madhavapeddy. Statically-typed value persistence for ML. In Proceedings of the Workshop on Generative Technologies, March 2010.Google Scholar
- }}F. Le Fessant and S. Patarin. MLdonkey, a Multi-Network Peer-to-Peer File-Sharing Program. Research Report RR-4797, INRIA, 2003.Google Scholar
- }}A. Madhavapeddy. Creating high-performance, statically type-safe network applications. Technical Report UCAM-CL-TR-775, University of Cambridge, Computer Laboratory, Apr. 2006.Google Scholar
- }}A. Madhavapeddy, A. Ho, T. Deegan, D. Scott, and R. Sohan. Melange: creating a “functional” Internet. SIGOPS Oper. Syst. Rev., 41(3):101--114, 2007. Google Scholar
Digital Library
- }}Y. Minsky and S. Weeks. Caml trading - experiences with functional programming on Wall Street. J. Funct. Program., 18(4):553--564, 2008. Google Scholar
Digital Library
- }}T. Morgan. Citrix desktop virt soars in Q4, Jan. 2010. http://bit.ly/ciB74a.Google Scholar
- }}B. O’Sullivan. Mercurial: the definitive guide. O’Reilly Media, first edition, 2009. Google Scholar
Digital Library
- }}D. Syme, A. Granicz, and A. Cisternino. Expert F#.Google Scholar
- }}J. Yallop. Practical generic programming in OCaml. In Proceedings of the 2007 workshop on Workshop on ML, pages 83--94, New York, NY, USA, 2007. ACM. Google Scholar
Digital Library
Index Terms
Using functional programming within an industrial product group: perspectives and perceptions
Recommendations
Using functional programming within an industrial product group: perspectives and perceptions
ICFP '10: Proceedings of the 15th ACM SIGPLAN international conference on Functional programmingWe present a case-study of using OCaml within a large product development project, focussing on both the technical and non-technical issues that arose as a result. We draw comparisons between the OCaml team and the other teams that worked on the project,...
a functional programming system SFP: sisal 3.1 language structures decomposition
PaCT'07: Proceedings of the 9th international conference on Parallel Computing TechnologiesThe paper describes equivalent transformations of structures of the Sisal 3.1 programming language (based on Sisal 90). These transformations are aimed to decompose the complex language structures into more simple ones that can be directly expressed by ...
Industrial Semantics and Magic
It's time for academic research in semantics to be industrially relevant. Yes, industry generally adapts slowly to new ideas, but the problem is compounded by academics' confusion about the issues they're solving - and those that industry would like ...







Comments