This concept doesn't exist in the library (for Set, Data.Maybe does the trick of course), so we should add it.
But where should it belong? A Setoid-with-a-point: is it an Algebra (with a very boring signature, consisting of a single nullary operation), or a special kind of Setoid, and hence should live with those things under Relation.Binary?
(this may be a separate library design pain point regarding Setoid: is that an Algebra too, albeit one with no operations?)
UPDATED: grrr. Pointed introduced in two ways already. Once to add a distinguished point; this apparently lives under Relation.Nullary.Construct.Add.Point where
open import Data.Maybe.Base public
using () renaming (Maybe to Pointed; nothing to ∙; just to [_])
and once to add a distinguished point which is moreover an identity for a binary operation. And overloading the shared common use of Maybe as the representing Free functor. This seems a bit wart-y how to proceed?
Either way, we might then want a Free such thing, (cf. #1962 / #1954 ) and know that its algebra is that of the usual adjoint/monadic situation arising from Maybe and the forgetful operation of throwing away the distinguished point.
This concept doesn't exist in the library (for
Set,Data.Maybedoes the trick of course), so we should add it.But where should it belong? A
Setoid-with-a-point: is it anAlgebra(with a very boring signature, consisting of a single nullary operation), or a special kind ofSetoid, and hence should live with those things underRelation.Binary?(this may be a separate library design pain point regarding
Setoid: is that anAlgebratoo, albeit one with no operations?)UPDATED: grrr.
Pointedintroduced in two ways already. Once to add a distinguished point; this apparently lives underRelation.Nullary.Construct.Add.Pointwhereand once to add a distinguished point which is moreover an identity for a binary operation. And overloading the shared common use of
Maybeas the representingFreefunctor. This seems a bit wart-y how to proceed?Either way, we might then want a
Freesuch thing, (cf. #1962 / #1954 ) and know that its algebra is that of the usual adjoint/monadic situation arising fromMaybeand the forgetful operation of throwing away the distinguished point.