This package implements an Ocaml language server implementation.
This package provides an OCaml library for calling OCamlFormat remotely.
This package generates S-expression conversion functions from type definitions.
Mirage-crypto provides symmetric ciphers (DES, AES, RC4, ChaCha20/Poly1305), and hashes (MD5, SHA-1, SHA-2).
These libraries provides access to low-level compiler interfaces and the standard higher-level merlin protocol.
This package provides a way to write bitstrings and matching over bitsrings in Erlang style as primitives to the language.
OCamlFormat is a tool to automatically format OCaml code in a uniform style. This package defines a RPC interface to OCamlFormat.
Ppx_enumerate is a ppx rewriter which generates a definition for the list of all values of a type (for a type which only has finitely many values).
This package simply repackages the OCaml compiler libraries so they don't expose everything at toplevel. For instance, Ast_helper
is now Ocaml_common.Ast_helper
.
The opam monorepo plugin provides a convenient interface to bridge the opam package manager with having a local copy of all the source code required to build a project using the dune build tool.
Optimised functions to read and write int16/32/64 from strings and bigarrays, based on new primitives added in version 4.01. It works on strings, bytes and bigstring (Bigarrys of chars), and provides submodules for big- and little-endian, with their unsafe counter-parts.
Expect-test is a framework for writing tests in OCaml, similar to Cram. Expect-tests mimics the existing inline tests framework with the let%expect_test
construct. The body of an expect-test can contain output-generating code, interleaved with %expect
extension expressions to denote the expected output.
This package provides two library modules:
Stream: imperative streams, with in-place update and memoization of the latest element produced.
Genlex: a small parameterized lexical analyzer producing streams of tokens from streams of characters.
The two modules are designed for use with Camlp4 and Camlp5: The stream patterns and stream expressions of Camlp4/Camlp5 consume and produce data of type 'a Stream.t. The Genlex tokenizer can be used as a simple lexical analyzer for Camlp4/Camlp5-generated parsers.
The Stream module can also be used by hand-written recursive-descent parsers, but is not very convenient for this purpose.
The Stream and Genlex modules have been part of the OCaml standard library for a long time, and have been distributed as part of the core OCaml system. They will be removed from the OCaml standard library at some future point, but will be maintained and distributed separately in the camlpstreams package.
This package generates JUnit XML reports from ocaml-alcotest test suites.
This package provides a bundle of useful runtime functions for applications built with MirageOS
This package provides string type based on [Bigarray], for use in I/O and C-bindings.
ppx-sexp-value is a ppx rewriter that simplifies building s-expressions from ocaml values.
This module implements purely in OCaml a character width function that follows the prototype of POSIX's wcwidth.
afl-fuzz normally works by repeatedly forking the program being tested. Using this package, you can run afl-fuzz in ``persistent mode'', which avoids repeated forking and is much faster.
Used to trace execution of OCaml/Lwt programs (such as Mirage unikernels) at the level of Lwt threads. The traces can be viewed using JavaScript or GTK viewers provided by mirage-trace-viewer or processed by tools supporting the Common Trace Format. When compiled against a normal version of Lwt, OCaml's cross-module inlining will optimise these calls away, meaning there should be no overhead in the non-profiling case.
This package contains a compatibility library for Stdlib.Bigarray
in OCaml.
This package contains a syntax extension for writing in-line tests in ocaml code. It is part of Jane Street's PPX rewriters collection.
base-quickcheck provides randomized testing in the style of Haskell's Quickcheck library, with support for built-in types as well as types provided by Base.
Ppx_fields_conv is a ppx rewriter that can be used to define first class values representing record fields, and additional routines, to get and set record fields, iterate and fold over all fields of a record and create new record values.