view interps/rhotor/Uniqs.hs @ 12312:ab575fb7f10e draft

<b_jonas> `` cp -vi /hackenv/tmp/egel-master/include/prelude-hackeso.eg /hackenv/interps/egel/
author HackEso <hackeso@esolangs.org>
date Thu, 20 Feb 2020 23:23:38 +0000
parents 859f9b4339e6
children
line wrap: on
line source

module Uniqs (
	Uniqs(Root, A, B, C)
)
where
	
data Uniqs = A Uniqs | B Uniqs | C Uniqs | Root

instance Eq Uniqs where
	(==) Root Root 		= True
	(==) (A a) (A b) 	= a == b
	(==) (B a) (B b) 	= a == b
	(==) (C a) (C b) 	= a == b
	(==) _ _			= False
	(/=) a b			= not (a == b)

instance Show Uniqs where
	show Root			= "R"
	show (A b)			= 'A':show b
	show (B b)			= 'B':show b
	show (C b)			= 'C':show b