From: "Luke A. Kanies" Date: 2003-11-07T15:04:33+09:00 Subject: rlex and ryacc Hi all, I'm just cutting my teeth on ruby, after a long time with perl as a sysadmin. I'm currently trying to write a language compiler. Because of my experience with perl, I am currently planning on using some kind of lex/yacc combo, mainly because it should be pretty fast and it should be relatively easy. However, rlex and ryacc don't seem to be quite functional. rlex didn't work with debian, although it worked apparently fine on my Solaris x86 box. ryacc, though, is using /**/ style comments and seems to have left out the middle couple hundred lines of code, which causes a few problems. rockit hasn't been updated in 2 years, so I'm guessing it's not compatible with the latest stuff. racc seems to be exist and be current, but it looks like a recursive descent parser (I'm not really even sure how to tell, it just seems to have a similar grammar), and the last one I used (Parse::RecDescent in perl) was about 10 times slower than a roughly equivalent Parse::Lex/Parse::Yapp combo. So, my question is: Is there a good parsing solution in ruby right now? I really don't want to write my own, as I don't think I'm up to it (I'm barely up to writing the parser with a parser compiler), but I really would like to use ruby, as all of my prototype code is in ruby and it has worked smashingly. I've read through the ruby-talk archives, and what consensus I could find there seemed to point to racc, so maybe I just need someone to correct my ideas about how racc works and whether I should use it. I'm not particularly attached to yacc-like functionality, as I've really only used it once, but I am definitely concerned about speed. Any help would be greatly appreciated. Thanks, Luke Kanies -- Computers are not intelligent. They only think they are.