Question: Problem 4 Please code in language: OCAML Starter Code: type 'a binTree = | Leaf | Node of 'a * ('a binTree) * ('a binTree)

Problem 4

Please code in language: OCAMLProblem 4 Please code in language: OCAML Starter Code: type 'a binTree

Starter Code:

type 'a binTree = | Leaf | Node of 'a * ('a binTree) * ('a binTree)

let rec mapT (f : 'a -> 'b) (t : 'a binTree) : 'b binTree =

Problem 4. Define a polymorphic data type called 'a bintree as follows: type 'a binTree = | Leaf | Node of 'a * ('a binTree) * ('a binTree) Trees of this type will contain a single piece of data of type 'a at each node, and no data at their leaves. (a) Define an OCaml function mapt : ('a -> 'b) -> 'a binTree -> 'b binTree which operates on trees just as map operates on lists. In other words, mapt takes a function and applies it to every data item of type 'a in a tree of type 'a binTree

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!