Derek, et al, Thanks for all the kind feedback. i could use a little help with one thing. In addition to this project, i've also got
- A project exploring how a relational query language is generated from a DSL describing typed sets of tuples <http://code.google.com/p/relatrope/> - A project exploring how a graph query language is generated from a DSL for describing graphs <http://code.google.com/p/graphatrope/> - A project exploring how a query language for service descriptions is generated from a DSL for describing concurrent processes<http://code.google.com/p/parallelatrope/> All of these projects, plus the rlambda one<http://code.google.com/p/rlambda/>, are cut of the same cloth in the sense that there is common lift structure wrapped around what is generated from the language description that is more or less contained in the bnf description. At this point, i'm convinced there is a useful lift archetype here. However, i don't know archetypes from myths or legends. ;-) If someone could help me get started i think i could flesh out a pretty compelling lift archetype for generating DSL's that i would love to contribute back to lift. Long term, if you look at a system like Peter Sewell's Ott<http://www.cl.cam.ac.uk/%7Epes20/ott/>, you should come away with the idea that it ought to be possible to provide, over and above the DSL's grammar, a very minimal specification of the DSL's semantics and have an execution engine generated. So, imagine, if you will, a lift archetype that takes as input a file approximately the size of the rlambda.cf<http://code.google.com/p/rlambda/source/browse/trunk/src/main/bnfc/rlambda.cf>+ a couple of rules for beta-reduction and alpha-equivalence, and generates the entire REPL-in-web-container, i.e. - generates a parser - an evaluator Beyond that, i have special sauce that will allow me to take such a spec and additionally generate - a logic - a model checker - a search engine That's where i'm headed long-term. But, to get there i need just a little bit of help with the archetype stuff. Best wishes, --greg On Tue, May 5, 2009 at 3:02 PM, Derek Chen-Becker <dchenbec...@gmail.com>wrote: > We just can't be half-assed about anything, can we? ;) Seriously, this is > really, really cool. I'm looking forward to seeing how this grows. > > Derek > > > On Mon, May 4, 2009 at 7:55 PM, Meredith Gregory <lgreg.mered...@gmail.com > > wrote: > >> Lifted, Scalad and lasses, >> >> Recently Martin passed along a little code challenge regarding scalable >> abstractions for building a little lambda calculus evaluator. i've finally >> put together a 1st draft response. i've still got a lot of debugging to do, >> but the solution <http://code.google.com/p/rlambda/source/browse/trunk/>is >> end-to-end. >> >> - there is a parser and evaluator hosted inside a lift-based >> web-container >> - the parser is built using BNFC and can target >> Java/C#/OCaml/Haskell/F#/... >> - the parser comes with visitor pattern support >> - the evaluator is built in a two-level type style and demonstrates >> that the only OO you need is just enough to make Scala happy -- the >> abstractions are all FP-based >> >> As i said, this is very much a draft and the code falls over most of the >> time. But, at this point, it's really a pedagogical device and framework for >> hosting and evaluating different solutions. >> >> Again, one the main reasons i see for using Scala is it's seamless interop >> with Java. The OCaml solution is intriguing (though ther are some >> strangenesses in it that i've yet to grok), but i would like to see that >> solution hosted in this manner. >> >> Best wishes, >> >> --greg >> >> -- >> L.G. Meredith >> Managing Partner >> Biosimilarity LLC >> 1219 NW 83rd St >> Seattle, WA 98117 >> >> +1 206.650.3740 >> >> http://biosimilarity.blogspot.com >> >> >> > > > > -- L.G. Meredith Managing Partner Biosimilarity LLC 1219 NW 83rd St Seattle, WA 98117 +1 206.650.3740 http://biosimilarity.blogspot.com --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Lift" group. To post to this group, send email to liftweb@googlegroups.com To unsubscribe from this group, send email to liftweb+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/liftweb?hl=en -~----------~----~----~----~------~----~------~--~---