Dear Fonc list and Dr Warth, (I'm not sure this is suitable for the fonc list but since my impression is that OMeta will be the parsing framework used in fonc I'll take the risc ;) )
I'm reading the OMeta paper (from DLS 07) and trying to understand the benefits implied by the statement: "However, OMeta is not a parser generator; it is a programming language whose control structure is based on PEGs." I have been using my own OO-based PEG-implementation in Ruby (implemented in Rockit) for some time and it is similar to OMeta in several regards (can be applied to any "streamable" input, OO inheritance of parsers/grammars etc). However, Rockit is different in that it uses a Ruby DSL to build a grammar description which is then executed/interpreted when parsing. OMeta seem to take a different approach in which for example the "foreign" function parses its arguments from the stream before calling the "external" grammar production/method. In Rockit the foreign call would have been pre-parsed so that when actually parsing some input, the arguments to "foreign" would be sent to the foreign method directly. It would be great if someone could elaborate on why OMeta has chosen this implementation. Is it mostly for implementation reasons (shorter /simpler implementation) or does it add some actual power to the parsing framework? Basically my question is: Would OMeta loose something by being a generator instead of a "programming lang with a PEG control structure"? It seems to me that the main benefit to OMeta's choice is conceptual simplicity; a parser writer need not distinguish between two different levels (in Rockit you extend the set of commands with normal Ruby code but then write your grammar using the existing commands) but can use a single formalism. Or are there other benefits? Thanks for any input and best regards, /Robert Feldt -- PhD, Assistant Professor in Software Engineering Blekinge Inst. of Technology, School of Engineering (APS), SE-372 25 Ronneby, Sweden Personal web: http://drfeldt.googlepages.com/ Research group web: http://www.bth.se/tek/serl/
_______________________________________________ fonc mailing list [email protected] http://vpri.org/mailman/listinfo/fonc
