A streaming shift-reduce parser written in vanilla Javascript