Everything OCaml

OCaml is a general purpose programming language with an emphasis on expressiveness and safety. Share what you are building.

‘A deep dive into Multicore OCaml garbage collector’ by KC Sivaramakrishnan, research associate at OCaml Labs - http://kcsrk.info/multicore/gc/2017/07/06/multicore-ocaml-gc/

Spotted this interesting link related to OCaml on Reddit and thought I would share it here.

@murbard had replied with this interesting comment below that I thought I’d also share here:

Murbard wrote: 'Pierre, who’s been working on the Tezos protocol, also works on multi-core OCaml.

That said, it’s not exactly clear if there are many benefits to running on multiple cores. Multiple core computation do make sense in a few contexts, such as running a fluid UI with a background computation thread, or heavy calculations with a lot of shared, mutable memory.

Blockchains are immutable data structures. In a sense, they already embed the logic that a multicore GC would have to use to safely manage memory. In that respect using several concurrent processes doesn’t pose a difficulty.

Currently, we use LWT, an asynchronous framework for OCaml, which is also capable of multithreading.’

2 Likes

Hi, I want to show you my ocaml projects:

  • secp256k1-ml : bindings to ocaml for the secp256k1 elliptic curve library
  • bitcoinml : Bitcoin data-structures library for OCaml, parser, serializer and sexper (transactions, blocks, segwit, and more) https://github.com/dakk/bitcoinml
  • letchain : an experimental Bitcoin full-node using bitcoinml https://github.com/dakk/letchain
2 Likes