Solutions to the problems in the Structure and Intepretations of Computer Programmes