Answered step by step
Verified Expert Solution
Question
1 Approved Answer
using haskell this is just for problem 4. the tree from the lecture is provided above the question. For Problems 3 and 4, use the
using haskell
this is just for problem 4. the tree from the lecture is provided above the question.
For Problems 3 and 4, use the following binary tree definition modified from lecture: It takes two type arguments, so nodes and leafs can contain different types of values data Tree a b - Leaf b Node a (Tree a b) (Tree a b) deriving (Read, show, Eq) (12 points) For this problem, let's call an "expression tree" a Tree String b tree where all of the node data are strings from the set "+", "-", "*", and "/", and the leafs hold numbers. Write an eval function routine that evaluates an expression tree. Division requires fractional numbers, so the type of eval is Fractional t => Tree String b-> b. Examples: Let el = Node "+" (Leaf 2) (Leaf 4), e2 = Node "-" (Leaf 11) (Leaf 8), and e3 = Node "/" (Node "*" el e2) (Leaf 36). Then eval el -6.0;eval e2 - 3.0; and eval e3 = 0.5. For Problems 3 and 4, use the following binary tree definition modified from lecture: It takes two type arguments, so nodes and leafs can contain different types of values data Tree a b - Leaf b Node a (Tree a b) (Tree a b) deriving (Read, show, Eq) (12 points) For this problem, let's call an "expression tree" a Tree String b tree where all of the node data are strings from the set "+", "-", "*", and "/", and the leafs hold numbers. Write an eval function routine that evaluates an expression tree. Division requires fractional numbers, so the type of eval is Fractional t => Tree String b-> b. Examples: Let el = Node "+" (Leaf 2) (Leaf 4), e2 = Node "-" (Leaf 11) (Leaf 8), and e3 = Node "/" (Node "*" el e2) (Leaf 36). Then eval el -6.0;eval e2 - 3.0; and eval e3 = 0.5Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started