A parser generator for javascript