# A parallel and shared memory library based on Hack's implementation

**URL:** <https://discuss.ocaml.org/t/a-parallel-and-shared-memory-library-based-on-hacks-implementation/3428>\
**Category:** Community\
**Created:** [March 1, 2019, 6:58pm UTC](https://discuss.ocaml.org/t/a-parallel-and-shared-memory-library-based-on-hacks-implementation/3428 "2019-03-01T18:58:22Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![rvantonder](https://sea2.discourse-cdn.com/flex020/user_avatar/discuss.ocaml.org/rvantonder/32/223_2.png) [@rvantonder](https://discuss.ocaml.org/u/rvantonder)\
**Post date:** [March 1, 2019, 6:58pm UTC](https://discuss.ocaml.org/t/a-parallel-and-shared-memory-library-based-on-hacks-implementation/3428/1 "2019-03-01T18:58:22Z")

</div>

[Hack\_parallel](https://github.com/rvantonder/hack-parallel) is a standalone parallel and shared memory library based on the components used in FB tools [Hack](https://github.com/facebook/hhvm/tree/master/hphp/hack), [Flow](https://github.com/facebook/flow), and [Pyre](https://github.com/facebook/pyre-check). The internals of these components are little known outside of these projects, yet stand to benefit the OCaml community more generally, both for practical use and educational purposes. So I extracted the core parts and packaged it up; more information can be found in the project README.

I put together an [example project](https://github.com/rvantonder/hack-parallel-example) to illustrate the basic interface.

---

_[View the full topic](https://discuss.ocaml.org/t/a-parallel-and-shared-memory-library-based-on-hacks-implementation/3428)._
