Related Articles
2024
- opam 2.3.0 release!
- Optimisation de Geneweb, 1er logiciel français de Généalogie depuis près de 30 ans
- Alt-Ergo 2.6 is Out!
- Flambda2 Ep. 3: Speculative Inlining
- opam 2.2.0 release!
- Flambda2 Ep. 2: Loopifying Tail-Recursive Functions
- Fixing and Optimizing the GnuCOBOL Preprocessor
- OCaml Backtraces on Uncaught Exceptions
- Opam 102: Pinning Packages
- Flambda2 Ep. 1: Foundational Design Decisions
- Behind the Scenes of the OCaml Optimising Compiler Flambda2: Introduction and Roadmap
- Lean 4: When Sound Programs become a Choice
- Opam 101: The First Steps
2023
- Maturing Learn-OCaml to version 1.0: Gateway to the OCaml World
- The latest release of Alt-Ergo version 2.5.1 is out, with improved SMT-LIB and bitvector support!
- 2022 at OCamlPro
- Autofonce, GNU Autotests Revisited
- Sub-single-instruction Peano to machine integer conversion
- Statically guaranteeing security properties on Java bytecode: Paper presentation at VMCAI 23
- Release of ocplib-simplex, version 0.5
- The Growth of the OCaml Distribution
2022
2021
- Verification for Dummies: SMT and Induction
- Generating static and portable executables with OCaml
- opam 2.1.0 is released!
- opam 2.0.9 release
- Detecting identity functions in Flambda
- Détection de fonctions d’identité dans Flambda
- opam 2.1.0~rc2 released
- Tutorial: Format Module of OCaml
- Réunion annuelle du Club des utilisateurs d’Alt-Ergo 2021
- New Try-Alt-Ergo
- opam 2.0.8 release
- 2020 at OCamlPro
- Release of Alt-Ergo 2.4.0
- opam 2.1.0~beta4 released
2020
- Memthol: exploring program profiling
- Rehabilitating Packs using Functors and Recursivity, part 2.
- Rehabilitating Packs using Functors and Recursivity, part 1.
- A Dune Love story: From Liquidity to Love
- [Interview] Sylvain Conchon joins OCamlPro
- [Interview] Sylvain Conchon rejoint OCamlPro
- Tutoriel Format
- A Solidity parser in OCaml with Menhir
- opam 2.1.0 alpha is here!
- opam 2.0.7 release
- Le nouveau GC d’OCaml 4.10 : premier aperçu de la stratégie best-fit
- An in-depth Look at OCaml’s new “Best-fit” Garbage Collector Strategy
- New version of TryOCaml in beta!
- Réunion annuelle du Club des utilisateurs d’Alt-Ergo
- 2019 chez OCamlPro
- 2019 at OCamlPro
- opam 2.0.6 release
- The Opam 2.0 cheatsheet, with a new theme!
2019
- Des nouvelles de la part de l'équipe compilateur d'OCamlPro
- Formations OCaml par OCamlPro : 5-6 et 7-8 novembre 2019
- OCaml expert and beginner training by OCamlPro (in French): Nov. 5-6 & 7-8
- A look back on OCaml since 2011
- Mise à jour des Cheat Sheets : OCaml Language et OCaml Standard Library
- Updated Cheat Sheets: OCaml Language and OCaml Standard Library
- OCamlPro’s compiler team work update
- Release d’opam 2.0.5
- opam 2.0.5 release
- Résultats de la SMT-Comp 2019 pour Alt-Ergo
- The Alt-Ergo SMT Solver’s results in the SMT-COMP 2019
- Blockchains @ OCamlPro: an Overview
- opam 2.0.4 release
- opam 2.0 tips
- Release : Liquidity version 1.0 !
- Announcing Liquidity version 1.0
- Release de Techelson, moteur de tests pour Michelson et Liquidity
- Techelson, a test execution engine for Michelson
- Signing Data for Smart Contracts
- What's new for Alt-Ergo in 2018? Here is a recap!
- Optimisation du stockage dans Tezos : une branche de test sur Gitlab
- Improving Tezos Storage : Gitlab branch for testers
- Tezos et OCamlPro
- Improving Tezos Storage : update and beta-testing
- Tezos and OCamlPro
- opam 2.0.3 release
- Improving Tezos Storage
2018
- opam 2.0.2 release
- An Introduction to Tezos RPCs: Signing Operations
- Introduction aux RPCs dans Tezos : exemple d’un portefeuille (wallet) simple
- An Introduction to Tezos RPCs: a Basic Wallet
- First Open-Source Release of TzScan
- Liquidity Tutorial: A Game with an Oracle for Random Numbers
- opam 2.0.1 is out!
- OCamlPro’s TzScan grant proposal accepted by the Tezos Foundation – joint press release
- opam 2.0.0 release and repository upgrade
- Last stretch! Repository upgrade and opam 2.0.0 roadmap
- opam 2.0.0 RC4-final is out!
- OCamlPro’s Tezos block explorer TzScan’s last updates
- opam 2.0.0 Release Candidate 3 is out!
- opam 2.0.0 Release Candidate 2 is out!
- Release of Alt-Ergo 2.2.0
- Taskforce on the Tezos Protocol, and TzScan evolution
- OCaml JTRT
- Release of Alt-Ergo 2.1.0
- New updates on TzScan
- Release of a first version of TzScan, a Tezos block explorer
- OCamlPro’s Liquidity-lang demo at JFLA2018 – a smart-contract design language
- opam 2.0.0 Release Candidate 1 is out!
- 2017 at OCamlPro
2017
2016
2015
2014
- OPAM 1.2 and Travis CI
- OPAM 1.2.0 Released
- OPAM 1.2: Repository Pinning
- OPAM 1.2.0 public beta released
- OCamlPro Highlights: May-June 2014
- Try Alt-Ergo in Your Browser
- OCamlPro Highlights: April 2014
- The Generic Syntax Extension
- OCamlPro Highlights: Feb 2014
- OCamlPro Highlights: Dec 2013 & Jan 2014
- OPAM 1.1.1 released
2013
- OCamlPro Highlights: November 2013
- OPAM 1.1.0 released
- OCamlPro Highlights, Sept-Oct 2013
- OPAM 1.1.0 release candidate out
- Alt-Ergo @ OCamlPro: Two months later
- OPAM 1.1.0 beta released
- OCamlPro Highlights, August 2013
- News from July
- Better Inlining: Progress Report
- News from May and June
- Optimisations you shouldn’t do
- April Monthly Report
- wxOCaml, camlidl and Class Modules
- An Indentation Engine for OCaml
- OPAM 1.0.0 released
- An Overview of our Current Activities
- Beta Release of OPAM
OCamlPro's Blog
Feedback on this post is welcomed on Discuss! As mentioned in our talk at the OCaml Workshop 2024, we decided to switch to a time-based release cycle (every 6 months), starting with opam 2.3. As promised, we are very pleased to announce the release of opam 2.3.0, and encourage all users to upgrade. ... (Read more)
L’équipe d’OCamlPro a récemment été sollicitée par l’association Roglo, une association française de généalogie qui gère une base de plus de 10 millions de personnes connectées dans un même arbre généalogique, et dont la base s'accroît d’environ 500 000 nouvelles contributions ... (Read more)
We are excited to announce the release of Alt-Ergo 2.6! Alt-Ergo is an open-source automated prover used for formal verification in software development. It is part of the arsenal behind static analysis frameworks such as TrustInSoft Analyzer and Frama-C, and is one of the solvers behind Why3, a pla... (Read more)
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 year-long effort in Research & Development and ... (Read more)
Feedback on this post is welcomed on Discuss! We are very pleased to announce the release of opam 2.2.0, and encourage all users to upgrade. Please read on for installation and upgrade instructions. NOTE: this article is cross-posted on opam.ocaml.org and ocamlpro.com, and published in discuss.ocaml... (Read more)
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. A lazy explanation for its utility would be... (Read more)
In this post, I will present some work that we did on the GnuCOBOL compiler, the only fully-mature open-source compiler for COBOL. It all started with a bug issued by one of our customers that we fixed by improving the preprocessing pass of the compiler. We later went on and optimised it to get bett... (Read more)
Uncaught exception: Not_found This blog post probably won't teach anything new to OCaml veterans; but for the others, you might be glad to learn that this very basic, yet surprisingly little-known feature of OCaml will give you backtraces with source file positions on any uncaught exception. Since i... (Read more)
Welcome, dear reader, to a new opam blog post! Today we take an additional step down the metaphorical rabbit hole with opam pin, the easiest way to catch a ride on the development version of a package in opam. We are aware that our readers are eager to see these blog posts venture on the developer s... (Read more)
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 optimizer. Credit goes to Andrew Kennedy's paper Comp... (Read more)
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 optimisation pass and today we would like to introduc... (Read more)
Monitoring Edge Technical Endeavours As a company specialized in strongly-typed programming languages with strong static guarantees, OCamlPro closely monitors the ongoing trend of bringing more and more of these elements into mainstream programming languages. Rust is a relatively recent example of t... (Read more)
Welcome, dear reader, to a new series of blog posts! This series will be about everything opam. Each article will cover a specific aspect of the package manager, and make sure to dissipate any confusion or misunderstandings on this keystone of the OCaml distribution! Each technical article will be t... (Read more)
From the very start OCamlPro has been trying to help ease the learning of the OCaml language. OCaml has been used around the world to teach about a variety of Computer Science domains, from algorithmic to calculus, or functional programming and compilation. The language had been long taught in Acade... (Read more)
We are happy to announce a new release of Alt‑Ergo (version 2.5.1). Alt-Ergo is a cutting-edge automated prover designed specifically for mathematical formulas, with a primary focus on advancing program verification. This powerful tool is instrumental in the arsenal of static analysis solutions su... (Read more)
For 12 years now, OCamlPro has been empowering a large range of customers, allowing them to harness state-of-the-art technologies and languages like OCaml and Rust. Our not-so-small-anymore company steadily grew into a team of highly-skilled and passionate engineers, experts in Computer Science, fro... (Read more)
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 compiler, originally written as a GNU Autoco... (Read more)
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 clouds. But, all is not lost, the warm rays of c... (Read more)
We are excited to announce that Nicolas will present a paper at the International Conference on Verification, Model Checking, and Abstract Interpretation (VMCAI) the 16th and 17th of January. This year, VMCAI is co-located with the Symposium on Principles of Programming Languages (POPL) conference, ... (Read more)
On last November, we released version 0.5 of ocplib-simplex, a generic library implementing the Simplex Algorithm in OCaml. It is a key component of the Alt-Ergo automatic theorem prover that we keep developing at OCamlPro. ** The Simplex Algorithm What Changed in 0.5 ? ] The simplex algorithm The S... (Read more)
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 grew from 18 MB to about 200 MB. This post gi... (Read more)
In this first post about WebAssembly (Wasm) and OCaml, we introduce the work we have been doing for quite some time now, though without publicity, about our participation in the Garbage-Collection (GC) Working Group for Wasm, and two related development projects in OCaml. WebAssembly, a fast and por... (Read more)
The Alt-Ergo automatic theorem prover developed at OCamlPro has just been released with a major update : counterexample model can now be generated. This is now available on the next branch, and will officially be part of the 2.5.0 release, coming this year ! Alt-Ergo at a Glance Alt-Ergo is an open ... (Read more)
It is with great pleasure that we announce the first beta release of Agnos. A former personal project of our new recruit, Arthur, Agnos development is now hosted at and sponsored by OCamlPro's Rust division, Red Iron. A white lamb with a blue padlock and blue stars. He is clearly to be trusted with ... (Read more)
Feedback on this post is welcomed on Discuss! We are pleased to announce the minor release of opam 2.1.3. This opam release consists of backported fixes: Fix opam init and opam init --reinit when the jobs variable has been set in the opamrc or the current config. (#5056) opam var no longer fails if ... (Read more)
In today's article, we share our contributions to the 2022 JFLAs, the French-Speaking annual gathering on Application Programming Languages, mainly Functional Languages such as OCaml (Journées Francophones des Langages Applicatifs). This much awaited event is organised by Inria, the French National... (Read more)
OCamlPro was created in 2011 to advocate the adoption of the OCaml language and Formal Methods in general in the industry. 2021 was a very special year as we celebrated our 10th anniversary! While building a team of highly-skilled engineers, we navigated through our expertise domains, programming la... (Read more)
Adrien Champion adrien.champion@ocamlpro.com This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. These posts broadly discusses induction as a formal verification technique, which here really means formal program verification. I will use concrete, runnabl... (Read more)
Distributing OCaml software on opam is great (if I dare say so myself), but sometimes you need to provide your tools to an audience outside of the OCaml community, or just without recompilations or in a simpler way. However, just distributing the locally generated binaries requires that the users ha... (Read more)
Feedback on this post is welcomed on Discuss! We are happy to announce the release of opam 2.1.0. Many new features made it in (see the pre-release changelogs or release notes for the details), but here are a few highlights. What's new in opam 2.1? Integration of system dependencies (formerly the op... (Read more)
Feedback on this post is welcomed on Discuss! We are pleased to announce the minor release of opam 2.0.9. This new version contains some back-ported fixes. New features Back-ported ability to load upgraded roots read-only; allows applications compiled with opam-state 2.0.9 to load a root which has b... (Read more)
In some discussions among OCaml developers around the empty type (PR#9459), some people mused about the possibility of annotating functions with an attribute telling the compiler that the function should be trivial, and always return a value strictly equivalent to its argument.Curious about the feas... (Read more)
Au cours de discussions parmi les développeurs OCaml sur le type vide (PR#9459), certains caressaient l’idée d’annoter des fonctions avec un attribut indiquant au compilateur que la fonction devrait être triviale, et toujours renvoyer une valeur strictement équivalente à son argument. Nous ... (Read more)
Feedback on this post is welcomed on Discuss! The opam team has great pleasure in announcing opam 2.1.0~rc2! The focus since beta4 has been preparing for a world with more than one released version of opam (i.e. 2.0.x and 2.1.x). The release candidate extends CLI versioning further and, under the ho... (Read more)
... (Read more)
La troisième réunion annuelle du Club des utilisateurs d’Alt-Ergo a eu lieu le 1er avril ! Cette réunion annuelle est l’endroit idéal pour passer en revue les besoins de chaque partenaire concernant Alt-Ergo. Nous avons eu le plaisir de recevoir nos partenaires pour discuter de la feuille de... (Read more)
Have you heard about our Try-Alt-Ergo website? Created in 2014 (see our blogpost), the first objective was to facilitate access to our performant SMT Solver Alt-Ergo. Try-Alt-Ergo allows you to write and run your problems in your browser without any server computation. This playground website has be... (Read more)
We are pleased to announce the minor release of opam 2.0.8. This new version contains some backported fixes: Critical for fish users! Don't add . to PATH. [#4078] Fix sandbox script for newer ccache versions. [#4079 and #4087] Fix sandbox crash when ~/.cache is a symlink. [#4068] User modifications ... (Read more)
2020 at OCamlPro OCamlPro was created in 2011 to advocate the adoption of the OCaml language and formal methods in general in the industry. While building a team of highly-skilled engineers, we navigated through our expertise domains, delivering works on the OCaml language and tooling, training comp... (Read more)
A new release of Alt-Ergo (version 2.4.0) is available. You can get it from Alt-Ergo's website. The associated opam package will be published in the next few days. This release contains some major novelties: Alt-Ergo supports incremental commands (push/pop) from the smt-lib standard. We switched co... (Read more)
Feedback on this post is welcomed on Discuss! On behalf of the opam team, it gives me great pleasure to announce the third beta release of opam 2.1. Don’t worry, you didn’t miss beta3 - we had an issue with a configure script that caused beta2 to report as beta3 in some instances, so we skipped ... (Read more)
Memthol is a visualizer and analyzer for program profiling. It works on memory dumps containing information about the size and (de)allocation date of part of the allocations performed by some execution of a program. For information regarding building memthol, features, browser compatibility… refer... (Read more)
This blog post and the previous one about functor packs covers two RFCs currently developed by OCamlPro and Jane Street. We previously introduced functor packs, a new feature adding the possiblity to compile packs as functors, allowing the user to implement functors as multiple source files or even ... (Read more)
OCamlPro has a long history of dedicated efforts to support the development of the OCaml compiler, through sponsorship or direct contributions from Flambda Team. An important one is the Flambda intermediate representation designed for optimizations, and in the future its next iteration Flambda 2. Th... (Read more)
By OCamlPro & Origin Labs Writing smart contacts may often be a burdensome task, as you need to learn a new language for each blockchain you target. In the Dune Network team, we are willing to provide as many possibilities as possible for developers to thrive in an accessible and secure framework. T... (Read more)
On April 2020, Sylvain Conchon joined the OCamlPro team as our Chief Scientific Officer on Formal Methods. Sylvain is a professor at University Paris-Saclay, he has also been teaching OCaml in universities for about 20 years. He is the co-author of Apprendre à programmer avec OCaml with Jean-Christ... (Read more)
Sylvain Conchon vient de rejoindre OCamlPro en tant que Chief Scientific Officer Méthodes Formelles. Professeur à l’Université Paris-Saclay, il travaille dans le domaine de la démonstration automatique pour la preuve de programmes et le model checking pour systèmes paramétrés. Il est aussi ... (Read more)
Article écrit par Mattias. Le module Format d’OCaml est un module extrêmement puissant mais malheureusement très mal utilisé. Il combine notamment deux éléments distincts : les boîtes d’impression élégante les tags sémantiques Le présent article vise à démystifier une grande partie ... (Read more)
This article is cross-posted on Origin Labs’ Dune Network blog We are happy to announce the first release of our Solidity parser, written in OCaml using Menhir. This is a joint effort with Origin Labs, the company dedicated to blockchain challenges, to implement a full interpreter for the Solidity... (Read more)
We are happy to announce a alpha for opam 2.1.0, one year and a half in the making after the release of 2.0.0. Many new features made it in (see the complete changelog or release note for the details), but here are a few highlights of this release. Release highlights The two following features have ... (Read more)
We are pleased to announce the minor release of opam 2.0.7. This new version contains backported small fixes: Escape Windows paths on manpages [#4129 @AltGr @rjbou] Fix opam installer opam file [#4058 @rjbou] Fix various warnings [#4132 @rjbou @AltGr - fix #4100] Fix dune 2.5.0 promote-install-files... (Read more)
An in-depth Look at OCaml’s new "Best-fit" Garbage Collector Strategy Le GC d’OCaml oeuvre discrètement à l’efficacité de vos allocations mémoire. Tel un héros de l’ombre, il reste méconnu de la plupart des hackers OCaml. Avec l’arrivée d’OCaml 4.10, il s’enrichit d’une nouvel... (Read more)
An in-depth Look at OCaml’s new "Best-fit" Garbage Collector Strategy The Garbage Collector probably is OCaml’s greatest unsung hero. Its pragmatic approach allows us to allocate without much fear of efficiency loss. In a way, the fact that most OCaml hackers know little about it is a good sign:... (Read more)
We are happy to announce that our venerable "TryOCaml" service is being retired and replaced by a new, modern version based upon our work on Learn-OCaml. → Try it here ← The new interface provides an editor panel besides the familiar top-level, error and warning positions highlighting, the lates... (Read more)
Alt-Ergo meeting Logo Alt-Ergo La deuxième réunion annuelle du Club des utilisateurs d’Alt-Ergo a eu lieu à la mi-février ! Notre réunion annuelle est l’endroit idéal pour passer en revue les besoins de chaque partenaire concernant Alt-Ergo. Cette année, nous avons eu le plaisir de recevo... (Read more)
2019 at OCamlPro OCamlPro a pour ambition d’aider les industriels dans leur adoption du langage OCaml et des méthodes formelles. L’entreprise est passée d’1 à 21 personnes et est restée fidèle à cet objectif. L’année 2019 chez OCamlPro a été très animée, et le nombre de réalisati... (Read more)
2019 at OCamlPro OCamlPro was created to help OCaml and formal methods spread into the industry. We grew from 1 to 21 engineers, still strongly sharing this ambitious goal! The year 2019 at OCamlPro was very lively, with fantastic accomplishments all along! Let's quickly review the past years' works... (Read more)
We are pleased to announce the minor release of opam 2.0.6. This new version contains some small backported fixes and build update: Don't remove git cache objects that may be used [#3831 @AltGr] Don't include .gitattributes in index.tar.gz [#3873 @dra27] Update FAQ uri [#3941 @dra27] Lock: add warni... (Read more)
The Opam 2.0 cheatsheet, with a new theme! Earlier, we dusted-off our Language and Stdlib cheatsheets, for teachers and students. With more time, we managed to design an Opam 2.0 cheat-sheet we are proud of. It is organized into two pages: The everyday average Opam use: Installation, Configuration, ... (Read more)
Nous sommes heureux de présenter certains travaux en cours sur le compilateur OCaml, travaux menés en étroite collaboration avec notre partenaire et client Janestreet. Un travail conséquent a été fait pour aboutir à un nouveau framework d’optimisation du compilateur, appelé Flambda2, dont ... (Read more)
OCamlPro lance un cycle de formations régulières à OCaml, en français, dans ses locaux parisiens (métro Alésia). La première session aura lieu début novembre 2019, avec 2 formations: Formation débutant : passer à OCaml (5-6 novembre) Formation expert : approfondir sa maîtrise du langage (... (Read more)
In our endeavour to encourage professional programmers to understand and use OCaml, OCamlPro will be giving two training sessions, in French, in our Paris offices: OCaml Beginner course for professional programmers (5-6 Nov) OCaml Expertise (7-8 Nov). The "Expert" OCaml course is for already experie... (Read more)
A look back on OCaml since 2011 As you already know if you’ve read our last blogpost, we have updated our OCaml cheat sheets starting with the language and stdlib ones. We know some of you have students to initiate in September and we wanted these sheets to be ready for the start of the school yea... (Read more)
Les mémentos (cheat-sheets) OCaml lang et OCaml stdlib partagés par OCamlPro en 2011 ont été mis à jour pour OCaml 4.08. Le langage OCaml OCaml Standard Library Si vous souhaitez contribuer des améliorations: sources sur GitHub. En savoir plus : Updated Cheat Sheets: OCaml Language and OCaml S... (Read more)
In 2011, we shared several cheat sheets for OCaml. Cheat sheets are helpful to refer to, as an overview of the documentation when you are programming, especially when you’re starting in a new language. They are meant to be printed and pinned on your wall, or to be kept in handy on a spare screen. ... (Read more)
The OCaml compiler team at OCamlPro is happy to present some of the work recently done jointly with JaneStreet's team. A lot of work has been done towards a new framework for optimizations in the compiler, called Flambda2, aiming at solving the shortcomings that became apparent in the Flambda optimi... (Read more)
Nous sommes fiers d’annoncer la release (mineure) d’ opam 2.0.5. Cette nouvelle version contient des mises à jours de build et correctifs. Plus d’information... (Read more)
We are pleased to announce the minor release of opam 2.0.5. This new version contains build update and small fixes: Bump src_ext Dune to 1.6.3, allows compilation with OCaml 4.08.0. [#3887 @dra27] Support Dune 1.7.0 and later [#3888 @dra27 - fix #3870] Bump the ocaml_mccs lib-ext, to include latest ... (Read more)
Les résultats de la compétition SMT-COMP 2019 ont été publiés au whorkshop SMT de la 22e conférence SAT. Nous étions fiers d’y participer pour la deuxième année consécutive, surtout depuis qu’Alt-Ergo prend en charge le standard SMT-LIB 2. Alt-Ergo est un SAT solveur open-source mainte... (Read more)
The results of the SMT-COMP 2019 were released a few days ago at the SMT whorkshop during the 22nd SAT conference. We were glad to participate in this competition for the second year in a row, especially as Alt-Ergo now supports the SMT-LIB 2 standard. Alt-Ergo is an open-source SAT-solver maintaine... (Read more)
OCamlPro started working on blockchains in 2014, when Arthur Breitman came to us with an initial idea to develop the Tezos ledger. The idea was very challenging with a lot of innovations. So, we collaborated with him to write a specification, and to turn the specification into OCaml code. Since then... (Read more)
We are pleased to announce the release of opam 2.0.4. This new version contains some backported fixes: Sandboxing on macOS: considering the possibility that TMPDIR is unset [#3597 @herbelin - fix #3576] display: Fix opam config var display, aligned on opam config list [#3723 @rjbou - rel. #3717] pin... (Read more)
This blog post looks back on some of the improvements in opam 2.0, and gives tips on the new workflows available. Package development environment management Opam 2.0 has been vastly improved to handle locally defined packages. Assuming you have a project ~/projects/foo, defining two packages foo-lib... (Read more)
Nous sommes fiers d'annoncer la release de la première version majeure de Liquidity, le langage de smart contracts et son outillage. Parmi les fonctions phares : multiples points d'entrée, système de contrats modulaire, polymorphisme et inférence de type, syntaxe ReasonML pour une plus grande ad... (Read more)
Liquidity version 1.0 We are pleased to announce the release of the first major version of the Liquidity smart-contract language and associated tools. Some of the highlights of this version are detailed below. Multiple Entry Points In the previous versions of Liquidity, smart contracts were limited ... (Read more)
Nous sommes fiers d’annoncer la première release de Techelson, moteur d’exécution de tests pour Michelson. Les programmeurs Liquidity peuvent également l’utiliser. Voir Techelson, a test execution engine for Michelson.... (Read more)
We are pleased to announce the first release of Techelson, available here. Techelson is a Test Execution Engine for Michelson. It aims at testing functional properties of Michelson smart contracts. Make sure to check the user documentation to get a sense of Techelson's workflow and features. For Liq... (Read more)
Smart contracts calls already provide a built-in authentication mechanism as transactions (i.e. call operations) are cryptographically signed by the sender of the transaction. This is a guarantee on which programs can rely. However, sometimes you may want more involved or flexible authentication sch... (Read more)
After the hard work done on the integration of floating-point arithmetic reasoning two years ago, 2018 is the year of polymorphic SMT2 support and efficient SAT solving for Alt-Ergo. In this post, we recap the main novelties last year, and we announce the first Alt-Ergo Users’ Club meeting. An SMT... (Read more)
Ce troisième article consacré à l’amélioration du stockage dans Tezos fait suite à l’annonce de la mise à disposition d’une image docker pour les beta testeurs souhaitant essayer notre système de stockage et garbage collector. Voir Improving Tezos Storage : Gitlab branch for testers... (Read more)
This article is the third post of a series of posts on improving Tezos storage. In our previous post, we announced the availability of a docker image for beta testers, wanting to test our storage and garbage collector. Today, we are glad to announce that we rebased our code on the latest version of ... (Read more)
Tezos est aujourd’hui un projet open source, un réseau international développé par des équipes sur plus de cinq continents. Dans la genèse du projet, l’entreprise française OCamlPro, qui développe encore aujourd’hui de nombreux projets liés à Tezos (TZscan, Liquidity, etc.), a joué u... (Read more)
In a previous post, we presented some work that we did to improve the quantity of storage used by the Tezos node. Our post generated a lot of comments, in which upcoming features such as garbage collection and pruning were introduced. It also motivated us to keep working on this (hot) topic, and we ... (Read more)
A reflection on the new year… Today, Tezos is a global network and an open source project with developers spanning over five continents. In the inception of this project, the French company OCamlPro which, to this day, stills develops numerous projects around Tezos, played a particularly important... (Read more)
We are pleased to announce the release of opam 2.0.3. This new version contains some backported fixes: Fix manpage remaining $ (OPAMBESTEFFORT) Fix OPAMROOTISOK handling Regenerate missing environment file Installation instructions (unchanged): From binaries: run or download manually from the Github... (Read more)
Running a Tezos node currently costs a lot of disk space, about 59 GB for the context database, the place where the node stores the states corresponding to every block in the blockchain, since the first one. Of course, this is going to decrease once garbage collection is integrated, i.e. removing ve... (Read more)
We are pleased to announce the release of opam 2.0.2. As sandbox scripts have been updated, don't forget to run opam init --reinit -ni to update yours. This new version contains mainly backported fixes: Doc: update man page add message for deprecated options reinsert removed ones to print a deprecat... (Read more)
In a previous blogpost, we presented the RPCs used by tezos-client to send a transfer operation to a tezos-node. We were left with two remaining questions: How to forge a binary operation, for signature How to sign a binary operation In this post, we will reply to these questions. We are still assum... (Read more)
Dans cet article technique, nous introduisons brièvement les RPCs dans Tezos à travers un exemple simple montrant comment le client Tezos interagit avec le noeud lors d’une instruction de transfert. Les RPCs de Tezos sont des requêtes HTTP (GET ou POST) auxquelles les noeuds Tezos répondent da... (Read more)
In this technical blog post, we will briefly introduce Tezos RPCs through a simple example: we will show how the tezos-client program interacts with the tezos-node during a transfer command. Tezos RPCs are HTTP queries (GET or POST) to which tezos-node replies in JSON format. They are the only way f... (Read more)
In October 2017, after the Tezos ICO, OCamlPro started to work on a block explorer for Tezos. For us, it was the most important software that we could contribute to the community, after the node itself, of course. We used it internally to monitor the Tezos alphanet, until its official public release... (Read more)
A Game with an oracle In this small tutorial, we will see how to write a chance game on the Tezos blockchain with Liquidity and a small external oracle which provides random numbers. Principle of the game Rules of the game are handled by a smart contract on the Tezos blockchain. When a player decide... (Read more)
We are pleased to announce the release of opam 2.0.1. This new version contains mainly backported fixes, some platform-specific: Cold boot for MacOS/CentOS/Alpine Install checksum validation on MacOS Archive extraction for OpenBSD now defaults to using gtar Fix compilation of mccs on MacOS and Nix p... (Read more)
Tezos Foundation and OCamlPro joint press release - October 17, 2018 We are pleased to announce that the Tezos Foundation has issued a grant to OCamlPro to support its work on TzScan, a block explorer for the Tezos blockchain that will be made open-source. OCamlPro is a French company and R&D lab, f... (Read more)
We are happy to announce the final release of opam 2.0.0. A few weeks ago, we released a last release candidate to be later promoted to 2.0.0, synchronised with the opam package repository upgrade. You are encouraged to update as soon as you see fit, to continue to get package updates: opam 2.0.0 su... (Read more)
A few days ago, we released opam 2.0.0~rc4, and explained that this final release candidate was expected be promoted to 2.0.0, in sync with an upgrade to the opam package repository. So here are the details about this! If you are an opam user, and don't maintain opam packages You are encouraged to u... (Read more)
We are happy to announce the opam 2.0.0 final release candidate! 🍾 This release features a few bugfixes over Release Candidate 3. It will be promoted to 2.0.0 proper within a few weeks, when the official repository format switches from 1.2.0 to 2.0.0. After that date, updates to the 1.2.0 reposit... (Read more)
OCamlPro is pleased to announce the latest update of TZScan (https://tzscan.io), its Tezos block explorer to ease the use of the Tezos network. TzScan is now ready for the protocol update scheduled for tomorrow. In addition to some minor bugfixes, the main novelties are: Displaying of obtained and e... (Read more)
We are pleased to announce the release of a third release candidate for opam 2.0.0. This one is expected to be the last before 2.0.0 comes out. Changes since the 2.0.0~rc2 are, as expected, mostly fixes. We deemed it useful, however, to bring in the following: a new command opam switch link that all... (Read more)
We are pleased to announce the release of a second release candidate for opam 2.0.0. This new version brings us very close to a final 2.0.0 release, and in addition to many fixes, features big performance enhancements over the RC1. Among the new features, we have squeezed in full sandboxing of packa... (Read more)
A new release of Alt-Ergo (version 2.2.0) is available. You can get it from Alt-Ergo's website. An OPAM package for it will be published in the next few days. The major novelty of this release is a new experimental front-end that supports the SMT-LIB 2 language, extended prenex polymorphism. This ex... (Read more)
As we are preparing to work on the Tezos Protocol, we're still actively keeping the pace on the block explorer TZScan.io, adding cool information for baking accounts. We'd like to allow people to see who is contributing to the network and to understand the distribution of rolls, rights, etc. For sta... (Read more)
This time of the year is, just like Christmas time, a time for laughs and magic... although the magic we are talking about, in the OCaml community, is not exactly nice, nor beautiful. Let's say that we are somehow akin to many religions: we know magic does exist , but that it is satanic and shouldn'... (Read more)
A new release of Alt-Ergo (version 2.1.0) is available on Alt-Ergo's website: https://alt-ergo.ocamlpro.com/#releases. An OPAM package for it will be published soon. In this release, we mainly improved the CDCL-based SAT solver to get performances similar to/better than the old Tableaux-like SAT. Th... (Read more)
Update - TZScan.io can now work on top of the zeronet (zeronet.tzscan.io), we hope it can help the developers community monitor the network. You can now switch between the alphanet & zeronet networks! OCamlPro is pleased to announce an update of TzScan (https://tzscan.io), its Tezos block explorer t... (Read more)
OCamlPro is proud to release a first version of TzScan, its Tezos block explorer to ease the use of the Tezos network. What TzScan can do for you : Several charts on blocks, operations, network, volumes, fees, and more, Marketcap and Futures/IOU prices from coinmarket.com, Blocks, operations, accoun... (Read more)
As a tradition, we took part in this year's Journées Francophones des Langages Applicatifs (JFLA 2018) that was chaired by LRI's Sylvie Boldo and hosted in Banyuls the last week of January. That was a nice opportunity to present a live demo of a multisignature smart-contract entirely written in th... (Read more)
We are pleased to announce a first release candidate for the long-awaited opam 2.0.0. A lot of polishing has been done since the last beta, including tweaks to the built-in solver, allowing in-source package definitions to be gathered in an opam/ directory, and much more. With all of the 2.0.0 featu... (Read more)
Since 2017 is just over, now is probably the best time to review what happened during this hectic year at OCamlPro… Here are our big 2017 achievements, in the world of blockchains (the Liquidity smart contract language, Tezos and the Tezos ICO etc.), of OCaml (with OPAM 2, flambda 2 etc.), and of ... (Read more)
After a few more months brewing, we are pleased to announce a new beta release of opam. With this new milestone, opam is reaching feature-freeze, with an expected 2.0.0 by the beginning of next year. This version brings many new features, stability fixes, and big improvements to the local developmen... (Read more)
This blog will cover yet another aspect of the improvements opam 2.0 has over opam 1.2. I may be a little more technical than previous issues, as it covers a feature directed specifically at packagers and repository maintainers, and regarding the package definition format. Specifying dependencies in... (Read more)
After the opam build feature was announced followed a lot of discussions, mainly having to do with its interface, and misleading name. The base features it offered, though, were still widely asked for: a way to work directly with the project in the current directory, assuming it contains definitions... (Read more)
Among the areas we wanted to improve on for opam 2.0 was the handling of switches. In opam 1.2, they are simply accessed by a name (the OCaml version by default), and are always stored into ~/.opam/
As you may have noticed, on the begining of April I have some urge to write something technical about some deeply specific point of OCaml. This time I'd like to tackle that through sudoku. It appeard that Sudoku is of great importance considering the number of posts explaining how to write a solver.... (Read more)
UPDATE: after discussions following this post, this feature was abandoned with the interface presented below. See this post for the details and the new interface! The new opam 2.0 release, currently in beta, introduces several new features. This post gets into some detail on the new opam build comma... (Read more)
UPDATE (2017-02-14): A beta2 is online, which fixes issues and performance of the opam build command. Get the new binaries, or recompile the opam-devel package and replace the previous binary. We are pleased to announce that the beta release of opam 2.0 is now live! You can try it already, bootstrap... (Read more)
We have recently released a new (public up-to-date) version of Alt-Ergo. We focus in this article on its main new feature: experimental support for models generation. This work has been done with Frédéric Lang, an intern at OCamlPro from February to July 2016. The idea behind models generation The... (Read more)
opam-lib 1.3 The package for opam-lib version 1.3 has just been released in the official opam repository. There is no release of opam with version 1.3, but this is an intermediate version of the library that retains compatibility of the file formats with 1.2.2. The purpose of this release is twofold... (Read more)
We are pleased to announce a preview release for opam 2.0, with over 700 patches since 1.2.2. Version 2.0~alpha4 has just been released, and is ready to be more widely tested. This version brings many new features and changes, the most notable one being that OCaml compiler packages are no longer spe... (Read more)
As you may know, there is a subset of Javascript that compiles efficiently to assembly used as backend of various compilers including a C compiler like emscripten. We'd like to present you in the same spirit how never to allocate in OCaml. Before starting to write anything, we must know how to find ... (Read more)
NOTE (September 2016): updated proposal from OCaml 2016 workshop is available, including links to prototype implementation. This is an initial proposal on signing the OPAM repository. Comments and discussion are expected on the platform mailing-list. The purpose of this proposal is to enable a secur... (Read more)
In this blog post, we explain how ocp-memprof helped us identify a piece of code in Alt-Ergo that needed to be improved. Simply put, a function that merges two maps was performing a lot of unnecessary allocations, negatively impacting the garbage collector's activity. A simple patch allowed us to pr... (Read more)
OPAM 1.2.2 has just been released. This fixes a few issues over 1.2.1 and brings a couple of improvements, in particular better use of the solver to keep the installation as up-to-date as possible even when the latest version of a package can not be installed. Upgrade from 1.2.1 (or earlier) See the... (Read more)
A few months ago, a memory leak in the Scanf.fscanf function of OCaml’s standard library has been reported on the OCaml mailing list. The following “minimal” example reproduces this misbehavior: Let us see how to identify the origin of the leak and fix it with our OCaml memory profiler. Instal... (Read more)
OPAM 1.2.1 has just been released. This patch version brings a number of fixes and improvements over 1.2.0, without breaking compatibility. Upgrade from 1.2.0 (or earlier) See the normal installation instructions: you should generally pick up the packages from the same origin as you did for the last... (Read more)
In this blog post, we went on the hunt of memory leaks in Cumulus by using our memory profiler: ocp-memprof. Cumulus is a feed aggregator based on Eliom, a framework for programming web sites and client/server web applications, part of the Ocsigen Project. First, run and get the memory snapshots To ... (Read more)
altergo logo After the public release of Alt-Ergo 0.99.1 last December, it's time to announce a new major private version (1.00) of our SMT solver. As usual: we freely provide a JavaScript version on Alt-Ergo's website we provide a private access to our internal repositories for academia users and o... (Read more)
The new pinning feature of OPAM 1.2 enables new interesting workflows for your day-to-day development in OCaml projects. I will briefly describe one of them here: simplifying continuous testing with Travis CI and GitHub. Creating an opam file As explained in the previous post, adding an opam file at... (Read more)
We are very proud to announce the availability of OPAM 1.2.0. Upgrade from 1.1 Simply follow the usual instructions, using your preferred method (package from your distribution, binary, source, etc.) as documented on the homepage. NOTE: There are small changes to the internal repository format (~/.o... (Read more)
Most package managers support some pin functionality to ensure that a given package remains at a particular version without being upgraded. The stable OPAM 1.1 already supported this by allowing any existing package to be pinned to a target, which could be a specific released version, a local filesy... (Read more)
It has only been 18 months since the first release of OPAM, but it is already difficult to remember a time when we did OCaml development without it. OPAM has helped bring together much of the open-source code in the OCaml community under a single umbrella, making it easier to discover, depend on, a... (Read more)
Here is a short report on some of our public activities in May and June 2014. Towards OPAM 1.2 After a lot of discussions and work on OPAM itself, we are now getting to a clear workflow for OCaml developpers and packagers: the preliminary document for OPAM 1.2 is available here. The idea is that you... (Read more)
Recently, we worked on an online Javascript-based serverless version of the Alt-Ergo SMT solver. In what follows, we will explain the principle of this version of Alt-Ergo, show how it can be used on a realistic example and compare its performances with bytecode and native binaries of Alt-Ergo. Comp... (Read more)
Here is a short report on some of our activities in April 2014, and a short analysis of OCaml evolution since its first release. OPAM Improvements We're still working on release 1.2. It was decided to include quite a few new features in this release, which delayed it a little bit since we want to be... (Read more)
OCaml 4.01 with its new feature to disambiguate constructors allows to do a nice trick: a simple and generic syntax extension that allows to define your own syntax without having to write complicated parsetree transformers. We propose an implementation in the form of a ppx rewriter. it does only a s... (Read more)
Here is a short report of some of our activities in February 2014 ! Displaying what OPAM is doing After releasing version 1.1.1, we have been very busy preparing the next big things for OPAM. We have also steadily been improving stability and usability, with a focus on friendly messages: for example... (Read more)
Here is a short report of some of our activities in last December and January ! A New Intel Backend for ocamlopt With the support of LexiFi, we started working on a new Intel backend for the ocamlopt native code compiler. Currently, there are four Intel backends in ocamlopt: amd64/emit.mlp, amd64/em... (Read more)
We are proud to announce that OPAM 1.1.1 has just been released. This minor release features mostly stability and UI/doc improvements over OPAM 1.1.0, but also focuses on improving the API and tools to be a better base for the platform (functions for opam-doc, interface with tools like opamfu and op... (Read more)
New Team Members We are pleased to welcome three new members in our OCamlPro team since the beginning of November: Benjamin Canou started working at OCamlPro on the Richelieu project, an effort to bring better safety and performance to the Scilab language. He is in charge of a type inference algorit... (Read more)
After a while staged as RC, we are proud to announce the final release of OPAM 1.1.0! Thanks again to those who have helped testing and fixing the last few issues. Important note The repository format has been improved with incompatible new features; to account for this, the new repository is now ho... (Read more)
Here is a short report of our activities in September-October 2013. OCamlPro at OCaml’2013 in Boston We were very happy to participate to OCaml’2013, in Boston. The event was a great success, with a lot of interesting talks and many participants. It was a nice opportunity for us to present some ... (Read more)
OPAM 1.1.0 is ready, and we are shipping a release candidate for packagers and all interested to try it out. This version features several bug-fixes over the September beta release, and quite a few stability and usability improvements. Thanks to all beta-testers who have taken the time to file repor... (Read more)
As announced in a previous post, I joined OCamlPro at the beginning of September and I started working on Alt-Ergo. Here is a report presenting the tool and the work we have done during the two last months. Alt-Ergo at a Glance Alt-Ergo is an open source automatic theorem prover based on SMT technol... (Read more)
We are very happy to announce the beta release of OPAM version 1.1.0! OPAM is a source-based package manager for OCaml. It supports multiple simultaneous compiler installations, flexible package constraints, and a Git-friendly development workflow which. OPAM is edited and maintained by OCamlPro, wi... (Read more)
Here is a short report on the different projects we have been working on in August. News from OCamlPro Compiler Optimizations After our reports on better inlining have raised big expectations, we have been working hard on fixing the few remaining bugs. An enhanced alias/constant analysis was added, ... (Read more)
Once again, here is the summary of our activities for last month. The highlight this month is the release of ocaml-top, an interactive editor for education which works well under Windows and that we hope professors all around the world will use to teach OCaml to their students. We are also continuyi... (Read more)
As announced some time ago, I am working on a new intermediate language within the OCaml compiler to improve its inlining strategy. After some time of bug squashing, I prepared a testable version of the patchset, available either on Github (branch flambda_experiments), or through OPAM, in the follow... (Read more)
It is time to give a brief summary of our recent activities. As usual, our contributions were focused on three main objectives: make the OCaml compiler faster and easier to use; make the OCaml developers more efficient by releasing new development tools and improving editor supports; organize and pa... (Read more)
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 performance sensitive code, but as I usually w... (Read more)
This post aims at summarizing the activities of OCamlPro for the past month. As usual, we worked in three main areas: the OCaml toolchain, development tools for OCaml and R&D projects. The toolchain Our multi-runtime implementation of OCaml had gained stability. Luca fixed a lot of low-level bugs in... (Read more)
Last week, I was bored doing some paperwork, so I decided to hack a little to relieve my mind... Looking for a GUI Framework for OCaml Beginners Some time ago, at OCamlPro, we had discussed the fact that OCaml was lacking more GUI frameworks. Lablgtk is powerful, but I don’t like it (and I expect ... (Read more)
Since our last activity report we have released the first stable versions of two projects: OPAM, an installation manager for OCaml source packages, and ocp-indent, an indentation tool. We have already described the basics of OPAM in two precedent blog posts, so today we will focus on the release of ... (Read more)
I am very happy to announce the first official release of OPAM! Many of you already know and use OPAM so I won't be long. Please read beta-release-of-opam for a longer description. 1.0.0 fixes many bugs and add few new features to the previously announced beta-release. The most visible new feature, ... (Read more)
From the early days of OCamlPro, people have been curious about our plans; they were asking how we worked at OCamlPro and what we were doing exactly. Now that we have started releasing projects more regularly, these questions come again. They are very reasonable questions, and have resolved to be mo... (Read more)
OPAM is a source-based package manager for OCaml. It supports multiple simultaneous compiler installations, flexible package constraints, and a Git-friendly development workflow. I have recently announced the beta-release of OPAM on the caml-list, and this blog post introduces the basics to new OPAM... (Read more)
OCaml 4.00.0 has been released on July 27, 2012. For the first time, the new OCaml includes some of the work we have been doing during the last year. In this article, I will present our main contributions, mostly funded by Jane Street and Lexifi. Binary Annotations for Advanced Development Tools OCa... (Read more)
We have recently worked on modifying the OCaml system to be able to profile OCaml code on Linux amd64 systems, using the processor performance counters now supported by stable kernels. This page presents this work, funded by Jane Street. The patch is provided for OCaml version 4.00.0. If you need it... (Read more)
We have recently worked on modifying the OCaml system to be able to pack a set of modules within a functor, parameterized on some signatures. This page presents this work, funded by Jane Street. All the patches on this page are provided for OCaml version 3.12.1. Packing Functors Installation of the ... (Read more)
Recently, I have been experimenting wiht OCaml / MSVC running on Windows 7 64bit. I have mainly followed what the OCaml’s README.win32 was saying and I learned some NSIS tricks. The result of this experiment is the following two (rather big) windows binaries : ocaml-trunk-64-installer.exe (92 MB) ... (Read more)
When you are beginning in a new programming language, it is sometimes helpful to have an overview of the documentation, that you can pin on your wall and easily have a look at it while you are programming. Since we couldn’t find such Cheat Sheets, we decided to start writting our own cheat sheets ... (Read more)
You will need OCaml 3.11.2 installed on a i686 linux computer. The archive contains: libcamlrun-linux-i686.a ocamlrun-linux-i686 Makefile README The Makefile has two targets: sudo make install will save /usr/bin/ocamlrun and /usr/lib/ocaml/libcamlrun.a in the current directory and replace them with ... (Read more)
Related Articles
2024
- opam 2.3.0 release!
- Optimisation de Geneweb, 1er logiciel français de Généalogie depuis près de 30 ans
- Alt-Ergo 2.6 is Out!
- Flambda2 Ep. 3: Speculative Inlining
- opam 2.2.0 release!
- Flambda2 Ep. 2: Loopifying Tail-Recursive Functions
- Fixing and Optimizing the GnuCOBOL Preprocessor
- OCaml Backtraces on Uncaught Exceptions
- Opam 102: Pinning Packages
- Flambda2 Ep. 1: Foundational Design Decisions
- Behind the Scenes of the OCaml Optimising Compiler Flambda2: Introduction and Roadmap
- Lean 4: When Sound Programs become a Choice
- Opam 101: The First Steps
2023
- Maturing Learn-OCaml to version 1.0: Gateway to the OCaml World
- The latest release of Alt-Ergo version 2.5.1 is out, with improved SMT-LIB and bitvector support!
- 2022 at OCamlPro
- Autofonce, GNU Autotests Revisited
- Sub-single-instruction Peano to machine integer conversion
- Statically guaranteeing security properties on Java bytecode: Paper presentation at VMCAI 23
- Release of ocplib-simplex, version 0.5
- The Growth of the OCaml Distribution
2022
2021
- Verification for Dummies: SMT and Induction
- Generating static and portable executables with OCaml
- opam 2.1.0 is released!
- opam 2.0.9 release
- Detecting identity functions in Flambda
- Détection de fonctions d’identité dans Flambda
- opam 2.1.0~rc2 released
- Tutorial: Format Module of OCaml
- Réunion annuelle du Club des utilisateurs d’Alt-Ergo 2021
- New Try-Alt-Ergo
- opam 2.0.8 release
- 2020 at OCamlPro
- Release of Alt-Ergo 2.4.0
- opam 2.1.0~beta4 released
2020
- Memthol: exploring program profiling
- Rehabilitating Packs using Functors and Recursivity, part 2.
- Rehabilitating Packs using Functors and Recursivity, part 1.
- A Dune Love story: From Liquidity to Love
- [Interview] Sylvain Conchon joins OCamlPro
- [Interview] Sylvain Conchon rejoint OCamlPro
- Tutoriel Format
- A Solidity parser in OCaml with Menhir
- opam 2.1.0 alpha is here!
- opam 2.0.7 release
- Le nouveau GC d’OCaml 4.10 : premier aperçu de la stratégie best-fit
- An in-depth Look at OCaml’s new “Best-fit” Garbage Collector Strategy
- New version of TryOCaml in beta!
- Réunion annuelle du Club des utilisateurs d’Alt-Ergo
- 2019 chez OCamlPro
- 2019 at OCamlPro
- opam 2.0.6 release
- The Opam 2.0 cheatsheet, with a new theme!
2019
- Des nouvelles de la part de l'équipe compilateur d'OCamlPro
- Formations OCaml par OCamlPro : 5-6 et 7-8 novembre 2019
- OCaml expert and beginner training by OCamlPro (in French): Nov. 5-6 & 7-8
- A look back on OCaml since 2011
- Mise à jour des Cheat Sheets : OCaml Language et OCaml Standard Library
- Updated Cheat Sheets: OCaml Language and OCaml Standard Library
- OCamlPro’s compiler team work update
- Release d’opam 2.0.5
- opam 2.0.5 release
- Résultats de la SMT-Comp 2019 pour Alt-Ergo
- The Alt-Ergo SMT Solver’s results in the SMT-COMP 2019
- Blockchains @ OCamlPro: an Overview
- opam 2.0.4 release
- opam 2.0 tips
- Release : Liquidity version 1.0 !
- Announcing Liquidity version 1.0
- Release de Techelson, moteur de tests pour Michelson et Liquidity
- Techelson, a test execution engine for Michelson
- Signing Data for Smart Contracts
- What's new for Alt-Ergo in 2018? Here is a recap!
- Optimisation du stockage dans Tezos : une branche de test sur Gitlab
- Improving Tezos Storage : Gitlab branch for testers
- Tezos et OCamlPro
- Improving Tezos Storage : update and beta-testing
- Tezos and OCamlPro
- opam 2.0.3 release
- Improving Tezos Storage
2018
- opam 2.0.2 release
- An Introduction to Tezos RPCs: Signing Operations
- Introduction aux RPCs dans Tezos : exemple d’un portefeuille (wallet) simple
- An Introduction to Tezos RPCs: a Basic Wallet
- First Open-Source Release of TzScan
- Liquidity Tutorial: A Game with an Oracle for Random Numbers
- opam 2.0.1 is out!
- OCamlPro’s TzScan grant proposal accepted by the Tezos Foundation – joint press release
- opam 2.0.0 release and repository upgrade
- Last stretch! Repository upgrade and opam 2.0.0 roadmap
- opam 2.0.0 RC4-final is out!
- OCamlPro’s Tezos block explorer TzScan’s last updates
- opam 2.0.0 Release Candidate 3 is out!
- opam 2.0.0 Release Candidate 2 is out!
- Release of Alt-Ergo 2.2.0
- Taskforce on the Tezos Protocol, and TzScan evolution
- OCaml JTRT
- Release of Alt-Ergo 2.1.0
- New updates on TzScan
- Release of a first version of TzScan, a Tezos block explorer
- OCamlPro’s Liquidity-lang demo at JFLA2018 – a smart-contract design language
- opam 2.0.0 Release Candidate 1 is out!
- 2017 at OCamlPro
2017
2016
2015
2014
- OPAM 1.2 and Travis CI
- OPAM 1.2.0 Released
- OPAM 1.2: Repository Pinning
- OPAM 1.2.0 public beta released
- OCamlPro Highlights: May-June 2014
- Try Alt-Ergo in Your Browser
- OCamlPro Highlights: April 2014
- The Generic Syntax Extension
- OCamlPro Highlights: Feb 2014
- OCamlPro Highlights: Dec 2013 & Jan 2014
- OPAM 1.1.1 released
2013
- OCamlPro Highlights: November 2013
- OPAM 1.1.0 released
- OCamlPro Highlights, Sept-Oct 2013
- OPAM 1.1.0 release candidate out
- Alt-Ergo @ OCamlPro: Two months later
- OPAM 1.1.0 beta released
- OCamlPro Highlights, August 2013
- News from July
- Better Inlining: Progress Report
- News from May and June
- Optimisations you shouldn’t do
- April Monthly Report
- wxOCaml, camlidl and Class Modules
- An Indentation Engine for OCaml
- OPAM 1.0.0 released
- An Overview of our Current Activities
- Beta Release of OPAM
Most Recent Articles
2024
- opam 2.3.0 release!
- Optimisation de Geneweb, 1er logiciel français de Généalogie depuis près de 30 ans
- Alt-Ergo 2.6 is Out!
- Flambda2 Ep. 3: Speculative Inlining
- opam 2.2.0 release!
- Flambda2 Ep. 2: Loopifying Tail-Recursive Functions
- Fixing and Optimizing the GnuCOBOL Preprocessor
- OCaml Backtraces on Uncaught Exceptions
- Opam 102: Pinning Packages
- Flambda2 Ep. 1: Foundational Design Decisions
- Behind the Scenes of the OCaml Optimising Compiler Flambda2: Introduction and Roadmap
- Lean 4: When Sound Programs become a Choice
- Opam 101: The First Steps
2023
- Maturing Learn-OCaml to version 1.0: Gateway to the OCaml World
- The latest release of Alt-Ergo version 2.5.1 is out, with improved SMT-LIB and bitvector support!
- 2022 at OCamlPro
- Autofonce, GNU Autotests Revisited
- Sub-single-instruction Peano to machine integer conversion
- Statically guaranteeing security properties on Java bytecode: Paper presentation at VMCAI 23
- Release of ocplib-simplex, version 0.5