This package is a line-reading library for OCaml that aims to replace readline.
Unix-specific extensions to some of the modules defined in core and core_kernel.
Define a standard set of libraries which may be expected on every compliant installation of OCaml and organize these libraries into a hierarchy of modules.
Uses the new result type defined in OCaml >= 4.03 while staying compatible with older version of OCaml should use the Result module defined in this library.
Provides a single module named Stringext that provides a grab bag of often used but missing string functions from the stdlib. E.g, split, full_split, cut, rcut, etc..
DSL to describe a set of modules and functors, their types and how to apply them in order to produce a complete application. The main use case is mirage.
Compatibility module for OCaml standard library allowing programs to use some recent additions to the standard library while preserving the ability to be compiled on former versions of OCaml.
Syntax extension to define first class values representing record fields, to get and set record fields, iterate and fold over all fields of a record and create new record values.
This module provides a set of tools to measure the running times of your functions and to easily compare the results. A statistical test is used to determine whether the results truly differ.
Merlin is an editor service that provides modern IDE features for OCaml. Emacs and Vim support is provided out-of-the-box. External contributors added support for Visual Studio Code, Sublime Text and Atom.
Lwt provides typed, composable cooperative threads. These make it easy to run normally-blocking I/O operations concurrently in a single process. Also, in many cases, Lwt threads can interact without the need for locks or other synchronization primitives.
This package provides two union-find data structure implementations for OCaml. Both implementations are based on disjoint sets forests, with path compression and linking-by-rank, so as to guarantee good asymptotic complexity: every operation requires a quasi-constant number of accesses to the store.
Xml-Light provides functions to parse an XML document into an OCaml data structure, work with it, and print it back to an XML document. It also supports DTD parsing and checking, and is entirely written in OCaml, hence it does not require additional C libraries.
Adds Erlang-style bitstrings and matching over bitstrings as a syntax extension and library for OCaml. You can use this module to both parse and generate binary formats, files and protocols. Bitstring handling is added as primitives to the language, making it exceptionally simple to use and very powerful.
Ctypes is a library for binding to C libraries using pure OCaml. The primary aim is to make writing C extensions as straightforward as possible. The core of ctypes is a set of combinators for describing the structure of C types -- numeric types, arrays, pointers, structs, unions and functions. You can use these combinators to describe the types of the functions that you want to call, then bind directly to those functions -- all without writing or generating any C!
This library provides minimal support for Canonical S-expressions. Canonical S-expressions are a binary encoding of S-expressions that is super simple and well suited for communication between programs.
This library only provides a few helpers for simple applications. If you need more advanced support, such as parsing from more fancy input sources, you should consider copying the code of this library given how simple parsing S-expressions in canonical form is.
To avoid a dependency on a particular S-expression library, the only module of this library is parameterised by the type of S-expressions.
Small implementation of a simple argv parser.
This extension provides a syntax for string interpolation.
This package implements an Ocaml language server implementation.
This package provides RE-based regular expressions support for Mparser.
Ppx-import is a syntax extension for importing declarations from interface files.
This package contains assert-like extension nodes that raise useful errors on failure.
This OCaml library provides an implementation of a mutable doubly-linked list with Lwt iterators.
This package is a ppx extension for easier implementation of conversion functions between almost identical types.