Programming booksParadigms of Artificial Intelligence Programming by Peter NorvigStructure and Interpretation of Computer Programs