Working on the problems from Structure and Interpretation of Computer Programs