Programming Challenges
Let's solve coding challenges to practice common computation patterns.
Challenge 1: map
on either
type
The following algebraic datatype defines the either
type:
type ('a, 'b) either = Left of 'a | Right of 'b
As a convention, Right of 'b
holds the correct value while Left of 'a
represents an error value.
Write a mapping function for either
called map_either : ('a -> 'b) -> ('c, 'a) either -> ('c, 'b) either
.
Examples:
map_either (fun x -> x * x) (Right 2)= Right 4
map_either (fun x -> x * x) (Left "Error case") = Left "Error case"
Get hands-on with 1400+ tech skills courses.