Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rgrinberg/lev
Low Level Bindings to Libev
https://github.com/rgrinberg/lev
libev ocaml
Last synced: 2 months ago
JSON representation
Low Level Bindings to Libev
- Host: GitHub
- URL: https://github.com/rgrinberg/lev
- Owner: rgrinberg
- Created: 2021-11-13T23:07:38.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2024-05-12T18:32:46.000Z (9 months ago)
- Last Synced: 2024-05-13T18:36:31.819Z (9 months ago)
- Topics: libev, ocaml
- Language: OCaml
- Homepage:
- Size: 505 KB
- Stars: 28
- Watchers: 3
- Forks: 5
- Open Issues: 1
-
Metadata Files:
- Readme: README.cpp.md
Awesome Lists containing this project
README
# Lev - OCaml bindings to libev
[libev]: http://software.schmorp.de/pkg/libev.html
[libevdoc]: http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod## Abstract
[libev](libev) by Marc Lehmann is a minimal & portable event loop library. This
repository contains two packages. The first is `lev` which offers low level
bindings to this library. The bindings are designed to be minimal, low
overhead, and easily embeddable in larger projects. The API is callback based
so you need to BYOC (bring your own concurrency).The second package is `lev-fiber`. It provides a more familiar, higher level
API. It is based on dune's fiber library for structured concurrency.## Example
This example of the low level API lev api:
```ocaml
#include "lev/examples/readme.ml"
```## Documentation
Lev's API is a thin wrapper around libev itself. So you should first and
foremost refer to libev's extensive [documentation](libevdoc). Lev itself will
document where it differs from libev's conventions.## License
`vendor/` is under Marc Lehmann's original terms (see vendor/LICENSE).
Everything else is offered under ISC (see src/LICENSE.md).