Lab 5 for CSCI3155 (Principles of Programming Languages)