Scheme interpreter and compiler