Question: QUESTION 2 Here is a definition for a datatype called Tree which can be used to represent expression trees. datatype Tree = Leaf of int

QUESTION 2
Here is a definition for a datatype called Tree which can be used to represent expression trees.
datatype Tree = Leaf of int | Add of Tree * Tree | Sub of Tree * Tree ;
Which of the following represents a complete implementation to evaluate any valid expression tree that takes a Tree and returns an integer?
fun eval(Leaf(c))= c
| eval(Leaf(c))= eval(Leaf(c));
fun eval(Leaf(c))= c
| eval(Leaf(c,d))= eval(Add(c),Sub(d));
fun eval(c)= c
| eval(c)= eval(Add(3,4))
| eval(c)= eval(Sub(3,4));
fun eval(Leaf(c))= c
| eval(Add(c, d))= eval(c)+ eval(d)
| eval(Sub(c, d))= eval(c)- eval(d);
fun eval(Leaf(c))= c
| eval(c, d)= c + d
| eval(c, d)= c - d;

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!