A Pointless Library Proposal

John Meacham john at repetae.net
Mon Oct 23 18:23:47 EDT 2006


On Mon, Oct 23, 2006 at 10:43:36PM +0100, Conor McBride wrote:
> This is one thing we've got that we shouldn't flaunt. If I can't have
> Zero, please may I have
> 
> >data Naught
> 
> >naughty :: Naught -> y
> 
> >innocent :: Functor f => f Naught -> f x
> 
> or some such?

I am liking the 'Void' idea proposed earlier, so we have

> module Data.Void where
> 
> data Void
>         deriving(Typeable,Data,Eq,Ord,...) -- ^ a lot of valid classes
>                                            --   are defined for _|_
> 
> fromVoid :: forall a . Void -> a
> fromVoid = unsafeCoerce#

as a bonus, with void, we get to be reminded of b-movie titles like

this friday, at your local theater:

"BEWARE! the catamorph from the VOID!"

I am not sure what a catamorph would be, depending on whether it is
preceded by cuddly or deadly I'd say a sidekick on thundercats or a
metamorphic feline killing machine.

speaking of which, there should be a contest among category theorists to
come up with the best definition for a 'Xenomorphism'. I am not sure
what it would be, but I doubt it would be structure preserving..

        John

-- 
John Meacham - ⑆repetae.net⑆john⑈


More information about the Libraries mailing list