Module Preface_make.Free_selective

Building a Preface_specs.Free_selective

Using the minimal definition

Over a Functor

Build a Preface_specs.FREE_SELECTIVE over a Preface_specs.FUNCTOR.

Over an Applicative

Build a Preface_specs.FREE_SELECTIVE over a Preface_specs.APPLICATIVE.

Over a Selective

Build a Preface_specs.FREE_SELECTIVE over an Preface_specs.SELECTIVE with a Natural transformation which extracts the underlying value and a run function which is the Natural transformation from the underlying applicative using the identity.