Discussion:
[Caml-list] Blockchains in OCaml
(too old to reply)
Arthur Breitman
2016-10-06 04:11:40 UTC
Permalink
Since blockchains tend to be a hot topic these days*, I am pleased to
announce that OCaml is also present in this domain with the Tezos project.

Tezos is a cryptographic ledger (in the same vein as Bitcoin or Ethereum)
written from scratch entirely in OCaml, in partnership with OCamlPro.

We are lucky to rely on some great OCaml libraries like Irmin and Lwt, and
have contributed some libraries of our own like ocplib-json-typed (for
reliable manipulation of JSON values) and ocplib-resto (for type safe HTTP/JSON
RPCs).

Tezos is a self-amending ledger. While other protocols achieve consensus
about the state of their transactions, Tezos reaches a meta-consensus about
its own protocol. This allows us to gradually build governance rules into
the ledger by letting the participants choose under which condition the
protocol may be amended.

We start with a simple voting procedure to accept or reject a proposed
patch to a set of OCaml modules representing the protocol. Over time,
complex rules can evolve. For instance, we may introduce a form of
constitutionalism by having the protocol require and enforce that any
proposed modification be formally verified and guaranteed to preserve
specific properties.

If you find this intriguing and enjoy working in OCaml, please reach out:
we're hiring! If you lean on the academic side and have experience with
formal verification, reach out as well! We'd be interested in proving the
correctness of some aspects of the protocol or sponsoring research in the
field in general (within our modest means).

Best,
Arthur

* perhaps hotter than it ought to be but, past the hype, there remains
susbtance
--
Caml-list mailing list. Subscription management and archives:
https://sympa.inria.fr/sympa/arc/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs
Van Chan Ngo
2016-10-10 14:00:49 UTC
Permalink
Hi Arthur,

It is interesting to implement blockchains in functional language like OCaml. I am happy to hear more about this project.

FYI, a related work, we are in progress to formalize the Ethereum Virtual Machine (EVM, the running environment of smart contracts) in Coq.

Best,
-Chan
If you find this intriguing and enjoy working in OCaml, please reach out: we're hiring! If you lean on the academic side and have experience with formal verification, reach out as well! We'd be interested in proving the correctness of some aspects of the protocol or sponsoring research in the field in general (within our modest means).
--
Caml-list mailing list. Subscription management and archives:
https://sympa.inria.fr/sympa/arc/caml-list
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs
Loading...