A recursive descent interpreter for a strict subset of JavaScript