A Solidity parser in OCaml with Menhir

(This article is cross-posted by the Origin Labs team) 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 behind Dune Network, to implement a full interpreter for the Solidity language directly in a blockchain. Solidity is probably the[…]

opam 2.0.7 release

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 duplication [#4132 @rjbou] Note: To homogenise macOS name on[…]

opam 2.1.0 alpha is here!

We are happy to announce the alpha release of Opam 2.1.0, one year and a half after Opam 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 been around for a[…]

Alt-Ergo Users’ Club Annual Meeting

The second annual meeting of the Alt-Ergo Users’ Club was held in mid-February. Our annual meeting is the perfect place to review each partner’s needs regarding Alt-Ergo. This year, we had the pleasure of receiving our partners to discuss the roadmap for future Alt-Ergo developments and enhancements. Alt-Ergo is an automatic mathematical formula checker, jointly[…]

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, first in the world of OCaml (flambda2 & compiler optimisations,[…]

opam 2.0.6 release

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 warning in case of missing locked file [#3939[…]

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, Switches, Allowed URL formats, Packages, Exploring, Package pinning, Working with local pins, Sharing a dev[…]

OCaml expert and beginner training by OCamlPro (in French): Nov. 5-6 & 7-8

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 experienced OCaml programmers to better understand advanced type system possibilities (objects,[…]

opam 2.0.5 release

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 changes [#3896 @AltGr] Fix cppo detection[…]

The Alt-Ergo SMT Solver’s results in the SMT-COMP 2019

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 maintained and distributed by OCamlPro[…]

Blockchains @ OCamlPro: an Overview

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, we continually improved our skills[…]

opam 2.0.4 release

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: update source of (version) pinned directory[…]

Announcing Liquidity version 1.0

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 to a single entry point (named main). But traditionally[…]

Techelson, a test execution engine for Michelson

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 Liquidity programmers interested in Techelson, take a look at[…]

Signing Data for Smart Contracts

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 schemes. The ones that rely on signature validity checking can be implemented in[…]

What’s new for Alt-Ergo in 2018 ? Here is a recap !

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 SMT2 front-end with prenex polymorphism As[…]

Tezos and OCamlPro

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 role. Indeed, they were the first home of[…]

Improving Tezos Storage

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 very old information, that[…]

opam 2.0.2 release

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 deprecated message instead of fail (e.g.[…]