MIT 6.006 code exercise