Thread overview | |||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
December 26, 2004 Gauging Interest in Parsing Library | ||||
---|---|---|---|---|
| ||||
Greetings All, I have finished a first version of a public-domain CFG R-D parser library, the YARD (yet another recursive descent) parser. Would there be any interest in including this library in the STLSoft, assuming of course that I assured it satisfied the technical requirements? More information is avaialable at http://yard-parser.sf.net TIA -- Christopher Diggins http://www.cdiggins.com http://www.heron-language.com |
December 27, 2004 Re: Gauging Interest in Parsing Library | ||||
---|---|---|---|---|
| ||||
Posted in reply to christopher diggins | Chris Always interested in all manner of things, especially when they're up to technical requirements. :-) Specifically, parsing's something I'm very amateurish on, so your proposition sounds appealing on first listen because it sounds like I could learn more. More objectively, parsing's definitely something that STLSoft does not yet provide - other than straightforward tokenisation (via string_tokeniser<>) - so sounds like it may answer a need. I'll try and have a gander at YARD later in the week. (FYI: STLSoft is 100% header only, and is always going to stay that way. However, I'm working on an affiliate structure - so I can 'release' some Synesis / STLSoft interoperation code - whereby things that need to work with arbitrary external libraries would live in the 'stlsoft::x' namespace. Details are a little sketchy atm, but it's important to note that (i) the 100% header only rule is never going to change, but (ii) we're going to find pragmatic ways to workaround it when suitable/necessary.) Cheers Matthew "christopher diggins" <cdiggins@videotron.ca> wrote in message news:cqn9es$2h81$1@digitaldaemon.com... > Greetings All, > > I have finished a first version of a public-domain CFG R-D parser library, the YARD (yet another recursive descent) parser. Would there be any interest in including this library in the STLSoft, assuming of course that I assured it satisfied the technical requirements? More information is avaialable at http://yard-parser.sf.net > > TIA > > -- > Christopher Diggins > http://www.cdiggins.com > http://www.heron-language.com > |
December 27, 2004 Re: Gauging Interest in Parsing Library | ||||
---|---|---|---|---|
| ||||
Posted in reply to Matthew | "Matthew" <admin@stlsoft.dot.dot.dot.dot.org> wrote in message news:cqo6l3$dgt$1@digitaldaemon.com... > Chris > > Always interested in all manner of things, especially when they're up to technical requirements. :-) > > Specifically, parsing's something I'm very amateurish on, so your proposition sounds appealing on first listen because it sounds like I could learn more. > > More objectively, parsing's definitely something that STLSoft does not yet > provide - other than straightforward tokenisation (via > string_tokeniser<>) - so sounds like it may answer a need. > I'll try and have a gander at YARD later in the week. Great! > (FYI: STLSoft is 100% header only, and is always going to stay that way. However, I'm working on an affiliate structure - so I can 'release' some Synesis / STLSoft interoperation code - whereby things that need to work with arbitrary external libraries would live in the 'stlsoft::x' namespace. Details are a little sketchy atm, but it's important to note that (i) the 100% header only rule is never going to change, but (ii) we're going to find pragmatic ways to workaround it when suitable/necessary.) YARD is also 100% header. Not something you want in a lager, but definitely an attractive feature in a library ;-) FYI: YARD has only been tested on Visual C++ 7.1 and GCC 3.4.1. Some other compilers are likely going to complain because it uses a lot of metaprogramming. -- Christopher Diggins http://www.cdiggins.com http://www.heron-language.com |
December 28, 2004 Re: Gauging Interest in Parsing Library | ||||
---|---|---|---|---|
| ||||
Posted in reply to christopher diggins | >> (FYI: STLSoft is 100% header only, and is always going to stay that way. However, I'm working on an affiliate structure - so I can 'release' some Synesis / STLSoft interoperation code - whereby things that need to work with arbitrary external libraries would live in the 'stlsoft::x' namespace. Details are a little sketchy atm, but it's important to note that (i) the 100% header only rule is never going to change, but (ii) we're going to find pragmatic ways to workaround it when suitable/necessary.) > > YARD is also 100% header. Not something you want in a lager, but definitely an attractive feature in a library ;-) Good! > > FYI: YARD has only been tested on Visual C++ 7.1 and GCC 3.4.1. Some other compilers are likely going to complain because it uses a lot of metaprogramming. Then you've come to the right place ... ;) |
January 31, 2005 Re: Gauging Interest in Parsing Library | ||||
---|---|---|---|---|
| ||||
Posted in reply to christopher diggins | Chris Still pushed for time, but still interested. Any chance of you pointing me in the direction of a couple of succinct samples showing the usefulness of YARD? :-) Cheers Matthew "christopher diggins" <cdiggins@videotron.ca> wrote in message news:cqo8ob$ful$1@digitaldaemon.com... > "Matthew" <admin@stlsoft.dot.dot.dot.dot.org> wrote in message news:cqo6l3$dgt$1@digitaldaemon.com... >> Chris >> >> Always interested in all manner of things, especially when they're up to technical requirements. :-) >> >> Specifically, parsing's something I'm very amateurish on, so your proposition sounds appealing on first listen because it sounds like I could learn more. >> >> More objectively, parsing's definitely something that STLSoft does >> not yet provide - other than straightforward tokenisation (via >> string_tokeniser<>) - so sounds like it may answer a need. >> I'll try and have a gander at YARD later in the week. > > Great! > >> (FYI: STLSoft is 100% header only, and is always going to stay that way. However, I'm working on an affiliate structure - so I can 'release' some Synesis / STLSoft interoperation code - whereby things that need to work with arbitrary external libraries would live in the 'stlsoft::x' namespace. Details are a little sketchy atm, but it's important to note that (i) the 100% header only rule is never going to change, but (ii) we're going to find pragmatic ways to workaround it when suitable/necessary.) > > YARD is also 100% header. Not something you want in a lager, but definitely an attractive feature in a library ;-) > > FYI: YARD has only been tested on Visual C++ 7.1 and GCC 3.4.1. Some other compilers are likely going to complain because it uses a lot of metaprogramming. > > -- > Christopher Diggins > http://www.cdiggins.com > http://www.heron-language.com > |
February 01, 2005 Re: Gauging Interest in Parsing Library | ||||
---|---|---|---|---|
| ||||
Posted in reply to Matthew | "Matthew" <admin@stlsoft.dot.dot.dot.dot.org> wrote in message news:ctmfbu$203i$1@digitaldaemon.com... > Chris > > Still pushed for time, but still interested. Any chance of you pointing me in the direction of a couple of succinct samples showing the usefulness of YARD? :-) > > Cheers Hi Matthew, Most definitely, but unfortunately it won't be for at least a couple of weeks. I am currently completely drowning here. I'll make an announcement here, when it is ready. I am glad to hear you are still interested! Best, Christopher |
February 16, 2005 Re: Gauging Interest in Parsing Library | ||||
---|---|---|---|---|
| ||||
Posted in reply to christopher diggins | Hi Matthew, Yard version 2.0 has just been released at http://www.ootl.org/yard/ . There is a sample cpp to html program at http://www.ootl.org/yard/examples/cpp_to_html.hpp.htm . I am still working on a comprehensive test suite which will contain numerous succinct examples. (the code was used to generate the pretty source code). Sorry about the delay. Christopher Diggins http://www.ootl.org |
February 16, 2005 Re: Gauging Interest in Parsing Library | ||||
---|---|---|---|---|
| ||||
Posted in reply to christopher diggins | No worries. Things here are still progressing like a weak snail pushing its way through a particularly obdurate bowl of molasses. ;) "christopher diggins" <cdiggins@videotron.ca> wrote in message news:cv0bq0$11qd$1@digitaldaemon.com... > Hi Matthew, > > Yard version 2.0 has just been released at http://www.ootl.org/yard/ . There is a sample cpp to html program at http://www.ootl.org/yard/examples/cpp_to_html.hpp.htm . I am still working on a comprehensive test suite which will contain numerous succinct examples. (the code was used to generate the pretty source code). Sorry about the delay. > > Christopher Diggins > http://www.ootl.org > > > > > > > |
February 16, 2005 Re: Gauging Interest in Parsing Library | ||||
---|---|---|---|---|
| ||||
Posted in reply to christopher diggins | The example'd benefit from some examples of input and output data "christopher diggins" <cdiggins@videotron.ca> wrote in message news:cv0bq0$11qd$1@digitaldaemon.com... > Hi Matthew, > > Yard version 2.0 has just been released at http://www.ootl.org/yard/ . There is a sample cpp to html program at http://www.ootl.org/yard/examples/cpp_to_html.hpp.htm . I am still working on a comprehensive test suite which will contain numerous succinct examples. (the code was used to generate the pretty source code). Sorry about the delay. > > Christopher Diggins > http://www.ootl.org > > > > > > > |
February 20, 2005 Re: Gauging Interest in Parsing Library | ||||
---|---|---|---|---|
| ||||
Posted in reply to Matthew | "Matthew" <admin@stlsoft.dot.dot.dot.dot.org> wrote in message news:cv0db7$13nu$1@digitaldaemon.com... > The example'd benefit from some examples of input and output data I will follow your advice and show input and output data. I actually just recently ended up overhauling the library, trimming some fat. I am still working on some better examples. Here is another example of YARD which converts http://xxx to html hyperlink's (i.e. adds <a href= tags) namespace http_replacer { int main() { ParserInput stream(cin); while (!stream.AtEnd()) { DefaultParser::iter_type pos = stream.GetPos(); if (!TextGrammar::Uri::Accept<DefaultParser>(stream)) { cout << stream.GetElem(); stream.GotoNext(); } else { string s(pos, stream.GetPos()); cout << "<a href='" << s << "'>" << s << "</a>"; } } return 0; } } The grammatical rule TextGrammar::Uri is defined in part with the following rules: struct HttpPrefix_string { static char const* GetString() { return "http://"; } }; struct HyperLinkChar : CharSet < char_set_union < ident_next_set, char_set_list < '+','-','?','%', '/','\\','_','.', '&','#','~' > > > { }; struct Uri : bnf_and< StringNoCase< HttpPrefix_string >, bnf_plus< HyperLinkChar > > { }; There is perhaps a single line of code which might particularly interest you in my code formatting tool: fstream in; fstream out; //... in > Filter(cpp_to_html::main) > Filter(http_replacer::main) > out; Does this line make intuitive sense to you? I'll give you a hint, > is intended a redirection/pipe operator. So what do you think? (1)Yawn (2)Good for you Christopher [patronizing pat on the head] (3)Lay off of the chemicals (4)I gotta have that code! -- Christopher Diggins Object Oriented Template Library (OOTL) http://www.ootl.org |
Copyright © 1999-2021 by the D Language Foundation