| Agnostic_mutex | |
| Arg | |
| Array | A better Array module. |
| Array_permute | randomly permute an array. |
| Backtrace | |
| Bag | A bag is a data structure like a set, except that: |
| Bigbuffer | Bigbuffer |
| Bigstring | Types and exceptions |
| Bigsubstring | |
| Binable | |
| Binary_packing | unpack a signed 1 byte int from the given buf starting at pos |
| Bool | |
| Bucket | Bucket-style datastucture |
| Byte_units | |
| Caml | |
| Char | Predicates |
| Common | Basic types and definitions required throughout the system. |
| Comparable | Inherit comparability from a component. |
| Condition | |
| Container | |
| Crc | Crc functions |
| Daemon | daemonize ?close_stdio ?cd ?umask () makes the executing process a daemon, i.e. |
| Dequeue | An array that can shrink and expand on both ends - the minimum index need not be 0. |
| Doubly_linked | doubly-linked lists |
| Error_check | Module for 'toggle' error checking. |
| Exn | Raised when finalization after an exception failed, too. |
| Fast_hashtbl | Hashtbl which stores a reference to the data for faster replace. |
| Field | |
| Filename | Warning! this library assumes we are in a POSIX compliant OS. |
| Float | Ordinary t-only nan test. |
| Float_robust_compare | |
| Floatable | |
| Force_once | A "force_once" is a thunk that can only be forced once. |
| Fqueue | Simple implementation of a polymorphic functional queue. |
| Function | A 'pipe' operator. |
| Gc | Memory management control and statistics; finalised values. |
| Hash_heap | A hash-heap is a combination of a heap and a hashtbl that supports constant time lookup, and log(n) time removal and replacement of elements in addition to the normal heap operations. |
| Hash_queue | |
| Hash_set | |
| Hash_set_intf | strict_add fails if element is already there |
| Hashable | |
| Hashtbl | |
| Hashtbl_intf | map t f returns new table with bound values replaced by f applied to the bound values |
| Heap | Min-heap implementation, adapted from CLR. |
| In_channel | In_channel collects all of the pervasive functions that work on in_channels. |
| Int | mod and div operators that have the right behavior on negative numbers, that is, x % y always returns a positive int between 0 and y-1. |
| Int32 | |
| Int63 | The size of Int63 is always at least 63 bits. |
| Int64 | |
| Int_conversions | Takes an int represented as a string ((-|+)? 0-9+) and puts underscores every 3 digits starting from the right. |
| Int_intf | |
| Int_set | An implementation of compressed integer sets using lists of integer ranges. |
| Interfaces | |
| Interval | Module for simple closed intervals over arbitrary types that are ordered correctly using polymorphic compare. |
| Interval_intf | Module for simple closed intervals over arbitrary types that are ordered correctly using polymorphic compare. |
| Linebuf | Line-by-line reading of a file. |
| Linux_ext | Interface to Linux-specific system calls |
| List | Tail recursive version of standard List functions, plus additional operations. |
| Lock_file | mutual exclusion between processes using lockf |
| Low_level_debug | |
| Make_substring | |
| Map | Polymorphic map module. |
| Map_intf | the empty map |
| Memo | Memoization code |
| Monad | t >>= f returns a computation that sequences the computations represented by two monad elements. |
| Month | sexp_of_t_mode controls how months are converted to strings by sexp_of_t. |
| Mutex | lock mtx locks mtx, possibly waiting for it to be released first by another thread. |
| Mutex0 | |
| Nativeint | |
| OUnit_utils | positive float generator |
| Option | Options form a monad, where return x = Some x None >>= f = None Some x >>= f = f x |
| Ordered_collection_common | normalize length_fun thing_with_length i is just i, unless i is negative, in which case it's length_fun thing_with_length + i. |
| Out_channel | |
| Piecewise_linear | piece-wise linear interpolation from float-like types to float |
| Pretty_printer | |
| Printexc | This module is here to ensure that we don't use the functions Caml.Printexc inadvertently |
| Printf | failwith, invalid_arg, and exit accepting printf's format. |
| Queue | Queue is a wrapper around OCaml's standard Queue module that follows Core idioms and adds some functions. |
| Quickcheck | Module for easily generating unit tests. |
| Ref | equal t1 t2 returns true if t1 and t2 are the same ref cell. |
| Result | useful in List.partition |
| Robustly_comparable | |
| Set | Polymorphic set module. |
| Set_intf | |
| Set_once | This module implements an option ref that starts out as None, and may be set only once. |
| Sexp | |
| Sexpable | |
| Signal | of_system_int and to_system_int return and take respectively a signal number corresponding to those in the system's /usr/include/bits/signum.h (or equivalent). |
| Space_safe_tuple | The raison d'etre for Space_safe_tuple<N> is that OCaml doesn't properly free variables matched in tuple patterns. |
| Squeue | Synchronized queue module |
| Stack | Stack is a replacement for OCaml's standard Stack module that follows Core idioms and adds some functions. |
| Std | |
| Std_internal | |
| String | An extension of the standard StringLabels. |
| Stringable | |
| Substring | |
| Substring_intf | create base ~pos ~len creates a a substring of the base sequence of length len starting at position pos, i.e. |
| Sys | System interface. |
| TZ | init () pre-load all available time zones from disk, this function has no effect if it is called multiple times |
| Terminal_io_intf | Ignore the break condition. |
| Thread | Lightweight threads. |
| Thread_safe_queue | There are four variants of thread-safe queue, depending on whether there are one/many readers or one/many writers. |
| Time | Our time module. |
| Timer | Timed events |
| Tuple | |
| Unique_id | A unique identifier based on a small allocated block, and an integer for hashing. |
| Unix | Interface to the Unix system. |
| Unix_ext | Interface to additional Unix-system calls |
| Weekday | of_string s accepts three-character abbreviations with any capitalization |