package prbnmcn-basic-structures

  1. Overview
  2. Docs

Module types useful for metaprogramming.

module type Std = sig ... end

Abstraction for standard boilerplate

module type Empty = sig ... end

Empty abstraction.

module type Sequencing = sig ... end

Abstraction for sequencing. Expected to be associative.

module type Loop = sig ... end

Abstraction for loops.

module type Const = sig ... end

Abstraction for constants.

module type Lambda = sig ... end

Abstraction for abstraction :)

module type Product = sig ... end

Abstraction for products.

module type Storage = sig ... end

Abstraction for monomorphic storage.

module type Bool = sig ... end

Abstraction for booleans.

module type Enum = sig ... end

Abstraction for enums.

module type Array = sig ... end

Abstraction for arrays.

module type Ring = sig ... end

Abstraction for rings.

module type Ring_std = sig ... end

Ring equipped with standard boilerplate.

module type Field = sig ... end

Abstraction for Fields.

module type Field_std = sig ... end

Field equipped with standard boilerplate.

module type Exn = sig ... end

Abstraction for raising exceptions.

module type Infix_order = sig ... end

Infix ordering operators.

module type Shape = sig ... end

Shapes: folding and iterating over abstract indexed structures.