I'm confused about an eval-when in cl-info.lisp with GCL
Subject: I'm confused about an eval-when in cl-info.lisp with GCL
From: James Amundson
Date: Sun, 25 Jul 2004 18:16:37 -0500
On Fri, 2004-07-23 at 12:56, Raymond Toy wrote:
> James> I just tried a simple solution: I #-gcl'd the definition of
> James> string-match. GCL has a built-in version of string-match. I think that's
> James> by far the simplest solution.
>
> Check the corner cases. I'm not 100% sure the regexes used in cl-info
> have the same syntax and semantics as the ones in gcl's matcher. I
> suspect there are some subtle differences, because I vaguely remember
> having to play around with the string regexes cl-info to make it work
> with nregex.
Oh, never mind. I thought my above solution (using native string-match)
was working, but my testing technique was flawed (long and stupid
story.)
Anyway, I spent much more time than I should have trying to optimize
cl-info. The good news is that the first instance of "? plot" used to
result in five compilations. It is now two. The bad news is that the
first invocation of the compiler with GCL takes the longest, so I didn't
really speed up the GCL version. CMUCL might seem faster on a slow
machine, however.
In the end, I compromised on the GCL implementation. If the prompt
variables are empty, we use the native info routines. Otherwise, we use
the cl-info routines.
--Jim