Functional Programming in Scheme Expressions, Types, and Functions
Symbolic expressions and improper lists
The cons function is suitable for definition of binary trees with 'data' in the leaves
A symbolic expression which illustrates the most general form it can take - a binary tree
The same symbolic expression laid out as a list. The expressions is a proper list if and only if h is the empty list.
If h is not the empty list, the symbolic expression is an improper list.