Posts Mentioning RSS Toggle Comment Threads | Keyboard Shortcuts

  • Ralph 4:57 pm on December 30, 2009 Permalink  

    Wormhole parser generator 0.5.3 

    The 0.5.3 installer has been readied.  The latest includes fixes to the ambiguity search, as well as a new symbol string ambiguity checker, and miscellaneous fixes.  Here’s the symbol string ambiguity checker in action:

    ambgteststring

     
  • Ralph 12:32 pm on December 30, 2009 Permalink  

    Available in the next release of the wormhole grammar analyzer, the string ambiguity checker. Pick a symbol off the list, add to the string, repeat. Click OK and it will check if the string is ambiguous in the currently loaded grammar.

     
  • Ralph 1:00 am on December 29, 2009 Permalink  

    Ambiguity Checker, new with 0.5.2 

    It’s a tad early for mainstream use, but I was so excited to get it working, I couldn’t wait.  Wormhole parser generator 0.5.2 includes an ambiguity checker.  It works, but the probabilistic functionality does nothing.

    (More …)

     
  • Ralph 12:34 am on December 18, 2009 Permalink  

    A short explanation of the GLR algorithm 

    I am in the process of revamping some old code, part of which contains the GLR algorithm.  The GLR algorithm is rather involved, so I figured this was the perfect opportunity to explain it once and for all, if for no other reason than to have a copy of this on hand.

    Like many parsers, the GLR algorithm is an LR based parser will build a parse tree from a series of tokens.  Unlike most though, it is able to handle ambiguous grammars.  Of practical interest, this means that a GLR parser can handle the ambiguous grammar of C++.  It accomplishes this, in concept, keeping a multitude of stacks, each representing one of the many possible parses of the input.  Naturally, the more ambiguous any particular input, the greater the performance hit for using this approach.

    To explain what goes on inside a GLR parser.  We’ll consider what happens when processing a single input token.  As a prerequisite, you need an LR table, produced from a suitable grammar, such as the wormhole parser generator.

    (More …)

     
  • Ralph 2:45 pm on December 16, 2009 Permalink  

    It was the best of code, it was the worst of code. The GLR algorithm, while extraordinarily useful when dealing with grammars that require multiple look-ahead and ambiguity reporting, is also the sort of code it takes time to comprehend, and that you want to forget as soon as you’ve done so.

     
  • Ralph 1:45 pm on December 13, 2009 Permalink  

    I just read this, http://www.caterina.net/archive/000996.html
    Nice post. This says something about efficiency. Makes you think.

     
  • Ralph 1:02 pm on December 13, 2009 Permalink  

    Site maintenance. I changed the theme, P2 looks much nicer, and now that I added the captcha’s I can let people create accounts. The images are gravatars, so you can go there are register your own custom avatar.

     
  • Ralph 1:06 am on December 4, 2009 Permalink  

    Release 0.5.1.2 

    Now releasing 0.5.1.2.  Fixed an error in the white space, and added the ability to open a grammar file directly from the conflict explainer.  Here’s a screen shot of the grammar-grammar after it parses itself.

    GoParseYourself

     
  • Ralph 2:40 am on December 2, 2009 Permalink  

    Introducing the Wormhole Conflict Explainer 

    We’ve released version 0.5.1 of the wormhole parser generator.  You may download it if you like.  Although I said I wouldn’t do any major updates, I ran into some hairy grammar problems on the up and coming commercial product, and I needed a solution pronto.  So I wrote the conflict explainer, a very simple GUI program to dig me out of the situation.

    (More …)

     
c
compose new post
j
next post/next comment
k
previous post/previous comment
r
reply
e
edit
o
show/hide comments
t
go to top
l
go to login
h
show/hide help
esc
cancel