Programming Challenges
Let's solve coding challenges to practice common computation patterns.
We'll cover the following...
We'll cover the following...
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"
Challenge 2: fold_left
The ...