Bottom-up parser generator written in JavaScript.

Similar to Bison for C.

A very nice, interesting effort (IMO).

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Assuming the point is

Assuming the point is JavaScript-as-assembly, is this interesting relative to, say, http://code.google.com/p/antlr-javascript/?

Edit: I should point out that more interesting to me, on that front, is that the standards committee is finally in a position it can start looking at more than bug fixes to the language spec. E.g., http://wiki.ecmascript.org/lib/exe/fetch.php?id=strawman%3Aquasis&cache=cache&media=strawman:quasi-strawman.html is partially being sold as DSL support.


Yes, kind of.

I had noticed antlr-javascript earlier (last year), too. But what I just found interesting here in Jison is the fact it's implemented in JavaScript and thus likely allows for a little more reflexive scenarios, from the ground up.

Now, I haven't tried it yet but I'll sure do as soon as I get a chance; if only out of mere curiosity.

Otherwise, I was more seeing it as a pretty nice new helper for those who'd wish to try experimenting further with JavaScript-based EDSLs processors, rather than for full blown general purpose PLs interpreters.


The OMeta javascript parsing and translation system is well worth mentioning in this context, too. Try the Logo example! (You'll need to doIt everything up to and including the "translateCode = ..." line first, then doIt the rest.)

I have never been able to

I have never been able to figure out that website (and was actually trying a couple weeks back). I had wanted to do some JS->JS translation and dataflow analysis..

* to JS

Well, one of the compiler demos in the system is a(n extensible) JS to JS translator: this example contains two "grammars", the first of which parses JS to an AST, and the second of which renders the AST as executable javascript again. Combine that with the inheritance mechanism (for extensibility) OMeta provides, and developing little JS extensions becomes quick and easy.

That was what I was the page

That was one of the pages I was looking for (and another was on dependencies/embedding etc.). However, for such a tantalizing piece of infrastructure, the OMeta documentation prevented me from using it *at all*. E.g., I couldn't even find the link you just showed me. In contrast, Terence Parr has done a great (if sometimes randomly distributed) job with ANTLR: a deployed demo is only part of the puzzle, and a thesis is definitely the wrong format.