Write an FP function unique L.
Unique accepts an input list, possibly infinitely long.
It returns a list having the same members as
L but with duplicates removed.
The order of first occurrence must be maintained.
A node in a binary tree can be represented as a triple:
elt::left::right.
Write a functional program to build
a binary search tree from a list of elements.
Extend the functional language parser to permit
[a, b, c, ..., x] as a shorthand for a::b::c::...::x::nil
and to allow "string" as shorthand for a list of characters
['s','t','r','i','n','g'].
Add a where clause to the language.
let [rec] <decs> in <Exp> = <Exp> where [rec] <decs>