[cl-ppcre-devel] Roles of scanner vs. parser vs. lexer?
    Edi Weitz 
    edi at agharta.de
       
    Wed Aug  3 23:32:37 UTC 2005
    
    
  
[You forgot to Cc the mailing list.]
On Wed, 3 Aug 2005 15:49:58 -0700, Derek Peschel <dpeschel at eskimo.com> wrote:
> CL-PPCRE makes a start, with a grammar and a set of token types that
> the lexer produces.  The problem, as you know, is how to make sure
> the specification is complete while stating it in a way that's not
> tied to a particular implementation.  All the context-sensitive
> tricks (extended mode, backreference vs. octal constants, \Q and \E)
> make the spec harder to check too.
Definitely.  I'm afraid I won't be able to help very much, though.
CL-PPCRE's parser/lexer is very much an ad hoc implementation and it's
the first parser I ever wrote.
> Climacs's syntax highlighters work with parse trees, so CL-PPCRE's
> use of them seemed to make it a good match for Climacs.  I think
> Climacs needs to reconstruct the original text from the parse tree,
> and it parses the text incrementally, and a good syntax module will
> flag errors yet allow further changes to the text.  So I don't know
> if the Climacs parse tree could be ready to pass to CL-PPCRE.  But
> that would be ideal.
Without knowing anything about Climacs' internals: How about using
CL-PPCRE::PARSE-STRING and feeding the result to Climacs?
> Are dangling \Es legal in Perl too?
Yep.
  edi at vmware:~$ perl -le '$a = "\Q*\E\E"; print $a'
  \*
Cheers,
Edi.
    
    
More information about the Cl-ppcre-devel
mailing list