Re:GraphLint: Creating a Domain Specific Language for Graph ...
by tom_b on Wednesday February 08, 2012 @11:01PM
(#3569750)
I have recently been experimenting with Treetop, a ruby gem that allows you to easily work with parsing expression grammars.
I may move to Common Lisp or Clojure for writing DSLs, but I am pretty happy with my early experience with Treetop. The one downside, especially compared to Antlr which has a couple of books out there, is that the Treetop documentation had me more than once scratching my head and hacking rather than looking up a relevant reference.
I think parsing expression grammars and packrat parsing in general is going to explode the DSL dev scene . . .
Re:GraphLint: Creating a Domain Specific Language for Graph ...
by andrewcooke on Wednesday February 08, 2012 @11:27AM
(#3567138)
interesting, thanks (sorry for misunderstanding slightly). possibly related / useful in future - did you notice that neo4j's licence terms changed a while back? i can't remember the details, but i had avoided it in the past because of licensing and remember that the change seemed to be an improvement.
Re:GraphLint: Creating a Domain Specific Language for Graph ...
by espeed on Wednesday February 08, 2012 @11:34AM
(#3567175)
The Neo4j community edition is now free and licensed under GPL (http://neo4j.org/download/), and they are working on an Enterprise license that is free for startups (https://groups.google.com/d/msg/gremlin-users/kw9N6xYb6l4/uH...).
There is also a Neo4j Heroku Add On (http://addons.heroku.com/neo4j) that is currently free for developers.
We're not using Neo4j because of other unrelated constraints that have led us to write our own graph data store. Kenny's work implemented the "rule paralleling queries" approach you mention.
I'm not sure about Prolog, but Java's Antlr library was really easy to use. Writing the parser+lexer infrastructure only took a few days. It wasn't quite as clean as using Antlr in a language like SML, but for implementing a parser in Java it was pretty great.