package preface

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

An Arrow with a neutral element. So Arrow_zero is also an Arrow.

Laws

To have a predictable behaviour, the instance of Arrow_zero must obey some laws.

  1. All Arrow laws

Minimal definition

module type WITH_NEUTRAL = sig ... end

Exposes the neutral value, mandatory for each requirement.

module type WITH_ARROW_AND_FST = sig ... end

Minimal definition using arrow, fst and neutral.

module type WITH_ARROW_AND_SPLIT = sig ... end

Minimal definition using arrow, split and neutral.

Structure anatomy

module type CORE = sig ... end

Basis operations.

module type OPERATION = Arrow.OPERATION

Additional operations.

module type ALIAS = Arrow.ALIAS

Aliases of some operations functions.

module type INFIX = Arrow.INFIX

Infix operators.

Complete API

module type API = sig ... end

The complete interface of an Arrow_zero.

Additional references