Module Example1

module Example1: sig .. end
This module defines a type to do something. It is still in development.

type ('a, 'b) t = private 'a list 
The type of custom lists.
'a : type of elements
'b : phantom type used to ...
val double_if : bool -> ('a, 'b) t -> ('a, 'b) t
f b l returns values according to the following rules:

rules for f
b result
true s
false s @ s

A thorough explanation of the definition is also available ...