Le 15 Apr 2011 14:31, Nick Dokos a écrit: > Eric Schulte <schulte.e...@gmail.com> wrote: > > > If one goal of such a formal description of Org-mode would be to parse > > text Org-mode files into an abstract syntax tree ... > > > > I think this should be the starting point: what are the goals for all this? > Providing a formal description in EBNF is one thing. Preparing an attribute > grammar for input into a specific tool is another (and probably an order of > magnitude - or two - harder) - what would the resulting parser(s) be used for? > > Clear(er) answers to these questions should go a long way towards figuring out > what specific tool(s) should be used - or whether it's at all necessary to > worry about that.
The primary goal I see for such a formal description is to provide a specification that third party parsers are supposed to respect. Writing a real parser may be too much project specific and difficult to generalize in a way usable by the community. During the development of neo[1], I was confronted to the need of defining what is an org file (actually, what is an headline, a todo keyword, a tag, a drawer, a timestamp, etc) and determining what is the expected output of a parser. Maybe the most appropriate format for such a description would be free text, letting parser developers choosing between context-free grammars, regexps or whatever they want ( with a bunch of example org files for reference and tests). Regards, Olivier [1] I am just discovering this thread