Lab 4 for CSCI3155 (Principles of Programming Languages)