From data structures to patterns - Ince Darel (2000)