Skip to content

Composable concurrency primitives with OCaml effects handlers (unreleased)

License

Notifications You must be signed in to change notification settings

dbuenzli/affect

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Affect — Composable concurrency primitives for OCaml

%%VERSION%%

Affect provides composable concurrency primitives for OCaml using the effect handlers available in OCaml 5.0.

Affect should be seen as an experiment at that point.

Affect is distributed under the ISC license. It has no dependencies.

Homepage: https://erratique.ch/software/affect

Installation

Affect can be installed with opam in a 5.0 switch:

opam switch create 5.0.0+trunk
opam pin add affect https://erratique.ch/repos/affect.git

If you don't use opam consult the opam file for build instructions.

Documentation

The documentation can be consulted online or via odig doc affect.

Questions are welcome but better asked on the OCaml forum than on the issue tracker.

Sample code

A few basic sample programs can be found in the test directory.

  • ping.ml, client and server using Funix to do useless networking on your machine.
  • mouse.ml, proof of concept interfacing with the SDL event loop.

They are installed in the opam var affect:doc directory.

If you have the repo and topkg installed you can run them with:

topkg build
topkg run -- ping   # repeat as needed 
topkg run -- mouse

About

Composable concurrency primitives with OCaml effects handlers (unreleased)

Resources

License

Stars

Watchers

Forks