( unnamed-faq-94

Info Catalog ( unnamed-faq-93 ( FAQ ( unnamed-faq-95
      To: Petr Danecek <>
      Subject: Re: flex - question
      In-reply-to: Your message of Mon, 28 Jun 1999 19:21:41 PDT.
      Date: Fri, 02 Jul 1999 16:52:13 PDT
      From: Vern Paxson <vern>
      > file, it takes an enormous amount of time. It is funny, because the
      > source code has only 12 rules!!! I think it looks like an exponencial
      > growth.
      Right, that's the problem - some patterns (those with a lot of
      ambiguity, where yours has because at any given time the scanner can
      be in the middle of all sorts of combinations of the different
      rules) blow up exponentially.
      For your rules, there is an easy fix.  Change the ".*" that comes fater
      the directory name to "[^ ]*".  With that in place, the rules are no
      longer nearly so ambiguous, because then once one of the directories
      has been matched, no other can be matched (since they all require a
      leading blank).
      If that's not an acceptable solution, then you can enter a start state
      to pick up the .*\n after each directory is matched.
      Also note that for speed, you'll want to add a ".*" rule at the end,
      otherwise rules that don't match any of the patterns will be matched
      very slowly, a character at a time.
Info Catalog ( unnamed-faq-93 ( FAQ ( unnamed-faq-95
automatically generated byinfo2html