Lab 9
The idea behind this lab is to develop functions that will be useful in performing random testing on your solutions to Assignment 4 and beyond.
Copy the definition of the CFAE language from Assignment 4.
Develop the function randomTerm that produces a CFAE containing only functions of one parameter, applications with one argument, and variable references. You’ll need to devise some mechanism that produces trees of a reasonable size
Refine your function randomClosedTerm so that it only produces "closed" CFAEs: that is, those with no free variables. To do this, your function must accept a list of currently-bound variables, so that it can be sure to pick varrefs only from this list.