Streaming JavaScript PLY parser