Overview
News
Salaries
Products
People
Growth
Offices
Financials

Overview

OCamlPro tackles complex design challenges (Domain Specific Languages, Code Audit and Verification, Optimization) notably with the use of formal methods. For that purpose, we promote the use of state-of-the-art programming languages like OCaml and Rust.

News

News ocamlpro.com 4 months ago
OCaml Onboarding: Introduction to the Dune build system
Welcome to all Camleers We are back with another practical walkthrough for the newcomers of the OCaml ecosystem. We understand from the feedback we have gathered over the years that getting started with the OCaml Distribution can sometimes be perceived as
Read more
Report
News ocamlpro.com 1 year ago
Flambda2 Ep. 4: How to write a purely functional compiler
Welcome to a new episode of The Flambda2 Snippets! Today, we will cover key high-level aspects of the algorithm of Flambda2. We will do our best to explain the fundamental design decisions pertaining to the architecture of the compiler. We will touch on h
Read more
Report
News ocamlpro.com 2 years ago
Flambda2 Ep. 3: Speculative Inlining
Welcome to a new episode of The Flambda2 Snippets! The F2S blog posts aim at gradually introducing the world to the inner-workings of a complex piece of software engineering: The Flambda2 Optimising Compiler for OCaml, a technical marvel born from a 10 ye
Read more
Report
News ocamlpro.com 2 years ago
Optimisations you shouldn't do
Doing the compiler's work Working at OCamlPro may have some drawbacks. I spend a lot of time hacking the OCaml compiler. Hence when I write some code, I have a good glimpse of what the generated assembly will look like. This is nice when I want to write p
Read more
Report
News ocamlpro.com 2 years ago
Flambda2 Ep. 2: Loopifying Tail-Recursive Functions
Welcome to a new episode of The Flambda2 Snippets! Today's topic is Loopify, one of Flambda2's many optimisation algorithms which specifically deals with optimising both purely tail-recursive and/or functions annotated with the @@loop attribute in OCaml.
Read more
Report
News ocamlpro.com 2 years ago
Flambda2 Ep. 1: Foundational Design Decisions
Welcome to The Flambda2 Snippets! In this first post of The Flambda2 Snippets, we dive into the powerful CPS-based internal representation used within the Flambda2 optimizer, which was one of the main motivation to move on from the former Flambda optimize
Read more
Report
News ocamlpro.com 2 years ago
Behind the Scenes of the OCaml Optimising Compiler Flambda2: Introduction and Roadmap
Introducing our Flambda2 snippets At OCamlPro, the main ongoing task on the OCaml Compiler is to improve the high-level optimisation. This is something that we have been doing for quite some time now. Indeed, we are the authors behind the Flambda optimisa
Read more
Report
News ocamlpro.com 3 years ago
Autofonce, GNU Autotests Revisited
Since 2022, OCamlPro has been contributing to GnuCOBOL, the only fully open-source compiler for the COBOL language. To speed-up our contributions to the compiler, we developed a new tool, autofonce, to be able to easily run and modify the testsuite of the
Read more
Report
News ocamlpro.com 3 years ago
Sub-single-instruction Peano to machine integer conversion
It is a rainy end of January in Paris, morale is getting soggier by the day, and the bulk of our light exposure needs are now fulfilled by our computer screens as the sun seems to have definitively disappeared behind a continuous stream of low-hanging clo
Read more
Report
News ocamlpro.com 3 years ago
Blog Post on "The Growth of the OCaml Distribution"
We recently worked on a project to build a binary installer for OCaml, inspired from RustUp for Rust. We had to build binary packages of the distribution for every OCaml version since 4.02.0, and we were surprised to discover that their (compressed) size
Read more
Report
Show more news