Module Preface_make.Writer

Building a Preface_specs.Writer, a Writer transformer.

Using the minimal definition

Build an Preface_specs.WRITER over an Inner Preface_specs.MONAD and given a monoidal tape.

Improving API

If there are complementary implementations to Preface_specs.MONAD attached to the Inner Preface_specs.MONAD type, it is possible to promote the Preface_specs.WRITER API with these complementary implementations

Functor

If the Inner Preface_specs.MONAD is also a Preface_specs.FUNCTOR, the Writer monad is also a Preface_specs.FUNCTOR.

Applicative

If the Inner Preface_specs.MONAD is also an Preface_specs.APPLICATIVE, the Writer monad is also an Preface_specs.APPLICATIVE.

Alternative

If the Inner Preface_specs.MONAD is also an Preface_specs.ALTERNATIVE, the Writer monad is also an Preface_specs.ALTERNATIVE.

Monad

If the Inner Preface_specs.MONAD is also a Preface_specs.MONAD, the Writer monad is also a Preface_specs.MONAD (this is this functor which is used in the full API definition).

Monad Plus

If the Inner Preface_specs.MONAD is also a Preface_specs.MONAD_PLUS, the Writer monad is also a Preface_specs.MONAD_PLUS.

Manual construction

Advanced way to build an Preface_specs.WRITER, constructing and assembling a component-by-component of Preface_specs.WRITER. (In order to provide your own implementation for some features.)

Building Core