Why Recursive Data Structures?