a little c interpreter