The list as a recursive data structure