churf/test_program
sebastianselander fecb71bc07 Found a bug.
2023-03-03 18:17:51 +01:00

43 lines
772 B
Text

data Bool () where {
True : Bool ()
False : Bool ()
};
data List ('a) where {
Nil : List ('a)
Cons : ('a) -> List ('a) -> List ('a)
};
data Maybe ('a) where {
Nothing : Maybe ('a)
Just : 'a -> Maybe ('a)
};
data Either ('a 'b) where {
Left : 'a -> Either ('a 'b)
Right : 'b -> Either ('a 'b)
};
safeHead : List ('a) -> Maybe ('a) ;
safeHead xs =
case xs of {
Nil => Nothing ;
Cons x xs => Just x
};
main : Maybe (_Int) ;
main = safeHead (Cons 0 (Cons 1 Nil)) ;
maybeToEither : Either ('a 'b) -> Maybe ('a) ;
maybeToEither e =
case e of {
Left y => Nothing ;
Right x => Just x
};
id : 'a -> 'a ;
id x = x ;
-- Bug, occurs check failed
holdFn : Maybe ('b -> 'b) ;
holdFn = Just id ;