John Rivers
John Rivers

Reputation: 1307

LALR(1) parser generator for scala

I know that it's possible to use, for example, bison-generated Java files in scala project, but is there any native "grammar to scala" LALR(1) generators?

Upvotes: 4

Views: 2009

Answers (2)

John Tang Boyland
John Tang Boyland

Reputation: 1088

Another plug here: ScalaBison is close to LALR(1) and lets you use Scala in the actions.

Upvotes: 1

inkytonik
inkytonik

Reputation: 534

I'm not really answering the original question, and please excuse the plug, but you may be interested in our sbt-rats plugin for the sbt tool. It uses the Rats! parser generator for Java, but makes it easier to use from Scala.

Rats! uses parsing expression grammars as its syntax description formalism, not context-free grammars and definitely not LALR(1) grammars. sbt-rats also has a high-level syntax definition language that in most cases means you do not need to write semantic actions to get a syntax tree that represents your input. The plugin will optionally generate case classes for the tree representation and a pretty-printer for the tree structure.

Upvotes: 0

Related Questions