churf/test_program
2023-03-22 10:32:22 +01:00

24 lines
415 B
Text

data Maybe ('a) where {
Nothing : Maybe ('a)
Just : 'a -> Maybe ('a)
};
fromJust : Maybe ('a) -> 'a ;
fromJust a =
case a of {
Just a => a
};
fromMaybe : 'a -> Maybe ('a) -> 'a ;
fromMaybe a b =
case b of {
Just a => a;
Nothing => a
};
maybe : 'b -> ('a -> 'b) -> Maybe ('a) -> 'b;
maybe b f ma =
case ma of {
Just a => f a;
Nothing => b
}