Note for Principles of Programming Languages - ppl By RAJAT ROY