implementation of whitespace interpreter