February 22, 2005
It really needs some examples.

I tried compiling with CodeWarrior 9.3 and I got a lot of errors, I'll try compiling with Visual Studio tommorow.

Out of curiosity is #include <string.h> in yard_input.hpp what you really meant or did you intend to use #include <string>.

Since you've tried it how is the performance? I'm asking since I saw that you are using iostreams and each time I see iostreams and parsing being used together I shudder.

Looks interesting othewise.


"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 22, 2005
> It really needs some examples.
>
> I tried compiling with CodeWarrior 9.3 and I got a lot of errors, I'll try compiling with Visual Studio tommorow.

If it, or any other library, is incorporated into, or made to work with, STLSoft it'll have to work with a large number of compilers. The good news is that I've a lot of experience at doing this, so I doubt it'd take much work to help Chris to get YARD to do so.

> Out of curiosity is #include <string.h> in yard_input.hpp what you really meant or did you intend to use #include <string>.
>
> Since you've tried it how is the performance? I'm asking since I saw that you are using iostreams and each time I see iostreams and parsing being used together I shudder.

LOL. A wise comment.

But I assume - haven't had much time to delve thus far - that Chris is concentrating on correctness first, and portability and performance next. (There's a lot of scope for making things faster, such as string views, custom allocators, etc. etc. But I do share your aversion to IOStreams when it comes to notions of 'performance'.)

> Looks interesting othewise.

Being a bit of a duffer about parsing, I can't offer any informed opinion on this, but it's interesting to hear another opinion.

CheerZz. ;)

Matthew


> "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 23, 2005
Hi zz,

"Zz" <Zz@Zz.com> wrote in message news:cvdujs$17gp$1@digitaldaemon.com...
> It really needs some examples.
>
> I tried compiling with CodeWarrior 9.3 and I got a lot of errors, I'll try compiling with Visual Studio tommorow.

You might want to wait a bit. The library went through some significant changes recently and I have a new version is not yet uploaded.

> Out of curiosity is #include <string.h> in yard_input.hpp what you really meant or did you intend to use #include <string>.

Big gaff on my part.

> Since you've tried it how is the performance? I'm asking since I saw that
> you are using iostreams and each time I see iostreams and parsing being
> used
> together I shudder.

The input is generic, it can be whatever you want. You can parse a raw memory block if you want. Then it goes like a bat out of hell.

> Looks interesting othewise.

Thanks!


February 23, 2005
"Matthew" <admin.hat@stlsoft.dot.org> wrote in message news:cvejve$201v$1@digitaldaemon.com...

> If it, or any other library, is incorporated into, or made to work with, STLSoft it'll have to work with a large number of compilers. The good news is that I've a lot of experience at doing this, so I doubt it'd take much work to help Chris to get YARD to do so.

Great!

> But I assume - haven't had much time to delve thus far - that Chris is concentrating on correctness first,

You bet: for(;;) testing();

>> Looks interesting othewise.
>
> Being a bit of a duffer about parsing, I can't offer any informed opinion on this, but it's interesting to hear another opinion.

I am going to whet your taste buds again. Check out http://www.ootl.org/char_set/ this is a part of the parsing library which I just isolated and separated (and generified a bit more). This should give a good foundation for what the rest of the library is about Matthew.

I would like to hear how this code works out for you.

CD


February 23, 2005
Hi Chris,


> You might want to wait a bit. The library went through some significant changes recently and I have a new version is not yet uploaded.

I'm patient.

> > Out of curiosity is #include <string.h> in yard_input.hpp what you
really
> > meant or did you intend to use #include <string>.
>
> The input is generic, it can be whatever you want. You can parse a raw memory block if you want. Then it goes like a bat out of hell.
>
We on a regular basis handle files of about 1.5GB, so loading the whole file is out of question on the other hand loading it in chunks is okay so long as c++ iostreams are not used and instead using plain fread.

Now for some suggestions.
When prototyping a parser I usually use rdp, since it generates rd parsers
in c that are human readable and editable.
http://www.dcs.rhbnc.ac.uk/research/languages/projects/rdp.shtml

It has a very interesting concept called Irerator BNF that follows this rule
(valid subproduction ) lo @ hi token.
the @ is the operator.

something like ('body') 2 @ 4 'separator'
would match the folowing:
1: body separator body
2: body separator body separator body
3: body separator body separator body separator body

It can also be used to describe regular ebnf patterns at the same time.
one-or-many   ( ... ) 1@1 #
kleene closure ( ... ) 0@0 #
zero-or-one    ( ... ) 0@1 #
alternate          ( ... ) 1@1 #

the # is just an operator that means 'nothing'.

Just thought you might find the above interesting, since you seem interested in parsing and meta programming.

Zz


February 28, 2005
"christopher diggins" <cdiggins@videotron.ca> wrote in message news:cviprq$1v92$1@digitaldaemon.com...
> Hi zz,
>
> "Zz" <Zz@Zz.com> wrote in message news:cvdujs$17gp$1@digitaldaemon.com...
>> It really needs some examples.
>>
>> I tried compiling with CodeWarrior 9.3 and I got a lot of errors, I'll
>> try
>> compiling with Visual Studio tommorow.
>
> You might want to wait a bit. The library went through some significant changes recently and I have a new version is not yet uploaded.


I finally released a new version of the YARD parser ( http://www.sf.net/yard_parser/ ), and rewrote the documentation. ( http://www.ootl.org/yard/ )

Comments and suggestions are appreciated.

-- 
Christopher Diggins
Object Oriented Template Library (OOTL)
http://www.ootl.org


February 28, 2005
Hi ZZ,

I really appreciate your feedback, and involvement!

Concerning the large file parsing issue, what would be require would be for someone to write a custom ParserInput type (see http://www.ootl.org/yard/#parser ). I haven't written a file reading input type which uses fread, as I think it may be outside the scope of the library. I don't know how hard it is for others to fill in the gaps. Would you be willing to write an efficient file reading type and share it with us?

Unfortunately I could not read the rdp documentation (no post-script reader). I could not understand the examples you shared with me.

Let me know whether you can get the yard examples working. Thanks!

-- 
Christopher Diggins
Object Oriented Template Library (OOTL)
http://www.ootl.org


February 28, 2005
I found a big problem with latest release, I am accidentally using microsoft extensions. I will be fixing that ASAP.

-- 
Christopher Diggins
Object Oriented Template Library (OOTL)
http://www.ootl.org


February 28, 2005
Easily done. ;)

Chris

I really do want to get in and have a look at YARD, but I'm still crying out for some examples. I quickly perused the latest URL posted yesterday, but failed to see any examples. Am I a thickie, or are they still missing/light?

Cheers

Matthew

"christopher diggins" <cdiggins@videotron.ca> wrote in message news:d0048a$op2$1@digitaldaemon.com...
>I found a big problem with latest release, I am accidentally using microsoft extensions. I will be fixing that ASAP.
>
> -- 
> Christopher Diggins
> Object Oriented Template Library (OOTL)
> http://www.ootl.org
> 


February 28, 2005
"Matthew" <admin@stlsoft.dot.dot.dot.dot.org> wrote in message news:d0061h$rda$2@digitaldaemon.com...
> Easily done. ;)
>
> Chris
>
> I really do want to get in and have a look at YARD, but I'm still crying out for some examples. I quickly perused the latest URL posted yesterday, but failed to see any examples. Am I a thickie, or are they still missing/light?

Sorry, they just aren't obvious. Check out the following source files:

http://www.ootl.org/yard/examples/simple_example.hpp.htm http://www.ootl.org/yard/examples/include_replacer.hpp.htm http://www.ootl.org/yard/examples/http_to_href.hpp.htm http://www.ootl.org/yard/examples/cpp_to_html.hpp.htm http://www.ootl.org/yard/tests/yard_tests.hpp.htm


CD