package fmlib_std
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=9efb96fe5c1cfb4edc2ff5c6df4537ce9ded12175a60021e9d482e51eb69ebfb
md5=3fb18b650cfcb0bf3bd05e120e17b28f
Description
Some small wrappers around ocamls stdlib modules to facilitate more functional programming. E.g. the module 'Option' and 'Result' support the 'let*' operator. The module 'Array' has a 'push' operation to append functionally elements at the end.
Besides some wrapper around Stdlib modules it has the additional modules:
-
Deque: A double ended queue with efficient pushing of elements from the front and the rear end and efficient popping of elements from the front end.
-
Btree: Finite sets and maps based on B trees. B trees have better cache efficiency and locality than AVL or Redblack trees.
Published: 09 Feb 2024
README
Fmlib - Functional Library with Managed Effects for Ocaml
Overview
Fmlib
is a functional library which has components for
Standard Data Structures (B trees, ... ):
Fmlib_std
Pretty Printing:
Fmlib_pretty
Parsing:
Fmlib_parse
Web applications:
Fmlib_browser
.Access to the browser and nodejs:
Fmlib_js
.
Design Documentation: Some designs and the corresponding algorithms are documented separately to ensure correctness of the corresponding designs and algorithms. The design documention is not neccessary to understand the usage of the library from a user's perspective. The user's perspective is documented in the API.
Installation
It is best to install the libraries via the ocaml package manager opam
.
opam install fmlib_std
opam install fmlib_pretty
opam install fmlib_parse
opam install fmlib_browser
Usage with dune
A program foo
which uses e.g. the library fmlib_std
can be e.g. compiled by dune with the dune file
(executable
(name foo)
(libraries
fmlib_std
...
)
)
Dependencies (3)
-
ppx_inline_test
>= "v0.13.0"
-
dune
>= "3.0.0"
-
ocaml
>= "4.08.0"
Dev Dependencies (1)
-
odoc
with-doc
Used by (5)
-
fmlib
>= "0.5.9"
-
fmlib_browser
>= "0.5.9"
-
fmlib_js
>= "0.5.9"
-
fmlib_parse
>= "0.5.9"
-
fmlib_pretty
>= "0.5.9"
Conflicts
None