Programming for design from theory to practice - Cherry, Edith (John Wiley, 1999)