package fmlib_std

  1. Overview
  2. Docs
Standard datatypes of Fmlib

Install

Dune Dependency

Authors

Maintainers

Sources

0.4.0.tar.gz
sha256=b54320cbe9bddac9ff88654e1d8ffea1d2eecb48aa668f3483f26f80c7954531
md5=28a93cbd62d5debe496759e8e954848b

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: 28 Dec 2021

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

  • Access to the browser and nodejs: Fmlib_js.

API Documentation

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_js

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 (4)

  1. fmlib = version
  2. ppx_inline_test >= "v0.13.0"
  3. dune >= "1.10"
  4. ocaml >= "4.08.0"

Dev Dependencies (1)

  1. odoc with-doc

Used by (3)

  1. fmlib_js = "0.4.0"
  2. fmlib_parse = "0.4.0"
  3. fmlib_pretty = "0.4.0"

Conflicts

None

OCaml

Innovation. Community. Security.