scheme vm & compiler