jhupllib
A collection of OCaml utilities used by the JHU PL lab
1024">
IN THIS PACKAGE
-
library jhupllib
-
module Jhupllib
-
module Jhupllib_eager_nondeterminism
-
module Nondeterminism_monad
-
module type Nondeterminism_monad_sig
-
-
module Jhupllib_logger_utils
-
module Jhupllib_monad_utils
-
module type Utils
-
module Jhupllib_multimap
-
module Make
-
argument 1-Key_ord
-
argument 2-Value_ord
-
module M
-
module Exceptionless
-
module Infix
-
module Labels
-
-
module S
-
module Exceptionless
-
module Labels
-
-
-
module type Multimap_sig
-
module M
-
module Exceptionless
-
module Infix
-
module Labels
-
-
module S
-
module Exceptionless
-
module Labels
-
-
-
-
module Jhupllib_multimap_pp
-
module Jhupllib_multimap_to_yojson
-
module Make
-
argument 1-M
-
module M
-
module Exceptionless
-
module Infix
-
module Labels
-
-
module S
-
module Exceptionless
-
module Labels
-
-
-
argument 2-K_yojson
-
argument 3-V_yojson
-
-
-
module Jhupllib_nondeterminism
-
module Nondeterminism_monad
-
module type Nondeterminism_monad_sig
-
-
module Jhupllib_pp_utils
-
module Jhupllib_string_utils
-
module Jhupllib_uids
-
module Make
-
module type Uid_module
-
-
module Jhupllib_utils
-
module Jhupllib_witness_protection
-
module type Escorted_registry
-
module Make_escorted
-
argument 1-S
-
-
module Make_to_yojson
-
module type Pp_utils
-
module type Registry
-
module type Spec
-
module type To_yojson_utils
-
-
module Jhupllib_yojson_utils
-
module Map_to_yojson
-
argument 1-M
-
module Exceptionless
-
module Infix
-
module Labels
-
-
argument 2-Y
-
-
module Set_to_yojson
-
argument 1-S
-
module Exceptionless
-
module Labels
-
-
argument 2-Y
-
-
module type To_yojson_type
-
-
Libraries
This package provides the following libraries (via dune):
jhupllib
Documentation:
Jhupllib
Jhupllib_eager_nondeterminism
This module contains a simple definition of an eager nondeterminism monad. This monad is eager in that it uses non-lazy structures (e.g. list) rather than lazy structures (e.g. lazy_list). While lazy structures are useful both to reduce memory copying and avoid unnecessary computation in the event that the results are not fully consumed, eager structures require less complex internal representations.Jhupllib_logger_utils
Jhupllib_monad_utils
A module containing a utility functor for monads.Jhupllib_multimap
Jhupllib_multimap_pp
Jhupllib_multimap_to_yojson
Jhupllib_nondeterminism
This module contains a non-determinism monad.Jhupllib_pp_utils
Jhupllib_string_utils
Jhupllib_uids
A module defining a generative functor which creates UID modules.Jhupllib_utils
Jhupllib_witness_protection
This module provides a means by which a registry of "witnesses" can be created. Here, a witness is a representative of another (typically more complex) value. A witness registry is a mutable structure which monotonically accumulates values, mapping distinct values to distinct witnesses. The primary use of such a registry is to accelerate comparison operations. For instance, using witnesses as keys in a tree-based dictionary may be faster than using the original values if the comparison between two values is an expensive operation.Jhupllib_yojson_utils
This module contains utility functions for writing Yojson codec generators.
Dependencies: batteries, monadlib, yojson, ppx_deriving.runtime, ppx_deriving_yojson.runtime