Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Gen build status

Iterators for OCaml, both restartable and consumable. The implementation keeps a good balance between simplicity and performance.

The library is extensively tested using qtest. If you find a bug, please report!

The documentation can be found here the main module is Gen and should suffice for 95% of use cases.


Native install

Installation in a native OCaml project, via opam:

$ opam install gen

or, manually, by building the library and running make install. Opam is recommended, for it keeps the library up-to-date.

BuckleScript install

Installation in JavaScript, via BuckleScript, in an npm project:

  1. Install this package:

    $ npm install bs-gen
  2. Manually add bs-gen to your bsconfig.json's bs-dependencies:

    "bs-dependencies": [


You can either build and install the library (see "Build"), or just copy files to your own project. The last solution has the benefits that you don't have additional dependencies nor build complications (and it may enable more inlining).

If you have comments, requests, or bugfixes, please share them! :-)


There are no dependencies except for dune for building. This should work with OCaml>=4.02

$ make

To build and run tests (requires oUnit and qtest):

$ opam install oUnit qtest
$ make test


This code is free, under the BSD license.