This version of the Dhaka gem fixes two bugs in the handling of grammars
that use precedence hints:
* Production precedences were sometimes not being calculated correctly
because of the grammar not being fully loaded at calculation time. The
calculation of these precedences is now postponed until they are actually
needed during parser generation. The precedences are needed only when
resolving conflicts - a rare occurrence - so generation speed isn't really
affected.
* Parsers created with grammars that used the 'nonassoc' precedence hint
could not be compiled to ruby source. This has been fixed.
As a side note, both the above bugs were found when trying to generate a
parser for the Ruby grammar. I haven't tested it extensively for
correctness, but the automaton for this parser has ~850 states and takes ~5
minutes to generate. Amazing how much complexity lurks beneath a language
that 'fits so easily into one's head'.
As a side note, both the above bugs were found when trying to generate a
parser for the Ruby grammar.
I just have to say that the Dhaka project and the side project of building a Ruby grammar are just about the two coolest projects I've seen in Rubyland lately. This is just terrific stuff!
Yes, that is indeed correct. Thanks for the encouraging comments.
Jonas, I checked the gem. It's empty! Doh! I will upload it properly as soon
as I get home from work.
Mushfeq.
···
On 12/15/06, hemant <gethemant@gmail.com> wrote:
On 12/15/06, James Edward Gray II <james@grayproductions.net> wrote:
> On Dec 15, 2006, at 12:38 AM, Mushfeq Khan wrote:
>
> > This version of the Dhaka gem...
>
> Just curious: what does Dhaka mean?
Dhaka is the capital of Bangladesh. IMHO author picked name from there.
--
gnufied
-----------
There was only one Road; that it was like a great river: its springs
were at every doorstep, and every path was its tributary.
I've replaced the empty gem and RubyForge has done its rounds. 'gem install
dhaka' should install the library properly now. My sincerest apologies and
thanks to Jonas for pointing this out.
Mushfeq.
···
On 12/15/06, Mushfeq Khan <mushfeq.khan@gmail.com> wrote:
Yes, that is indeed correct. Thanks for the encouraging comments.
Jonas, I checked the gem. It's empty! Doh! I will upload it properly as
soon
as I get home from work.
Mushfeq.
On 12/15/06, hemant <gethemant@gmail.com> wrote:
>
> On 12/15/06, James Edward Gray II <james@grayproductions.net> wrote:
> > On Dec 15, 2006, at 12:38 AM, Mushfeq Khan wrote:
> >
> > > This version of the Dhaka gem...
> >
> > Just curious: what does Dhaka mean?
>
> Dhaka is the capital of Bangladesh. IMHO author picked name from there.
>
> --
> gnufied
> -----------
> There was only one Road; that it was like a great river: its springs
> were at every doorstep, and every path was its tributary.
>
Can you provide any additional examples? For example, creating a
simple DSL like LOGO using Dhaka? I think it would really help me
understand how to use this library. I think the idea and the concept
behind it is quite wonderful!
For example, when building a tokenizer -- can i have a word as a
"token" such as "canary" or does each token have to be a single
character? Based on the examples, they appear to only be single
characters -- I'm doing my best to abstract the information of the
examples -- as to what is part of the library and what is defined by
the user of the library (e.g. is :idle_state a key symbol for the
library?)
I'll dig into the actually library code at some point.
We are planning to integrate Dhaka with Ruport soon, so more examples
would make life easier for us, too
···
On 12/26/06, HH <appleman@gmail.com> wrote:
Can you provide any additional examples? For example, creating a
simple DSL like LOGO using Dhaka? I think it would really help me
understand how to use this library. I think the idea and the concept
behind it is quite wonderful!
Vacationing in a part of the world with no internet access, hence the late
reply. I will totally do this as soon as I get back.
Also, if you have any immediate questions that need answering, just email me
off the list.
Mushfeq.
···
On 12/26/06, Gregory Brown <gregory.t.brown@gmail.com> wrote:
On 12/26/06, HH <appleman@gmail.com> wrote:
> Can you provide any additional examples? For example, creating a
> simple DSL like LOGO using Dhaka? I think it would really help me
> understand how to use this library. I think the idea and the concept
> behind it is quite wonderful!
We are planning to integrate Dhaka with Ruport soon, so more examples
would make life easier for us, too