On Thu, Jul 30, 2009 at 8:04 PM, Robert Dodier<robert_dodier(a)yahoo.com> wrote:
>
> --- On Thu, 7/30/09, Erik Huelsmann <ehuels(a)gmail.com> wrote:
>
>> Another question: I'm running these profiles too, of
>> course. On my system rtest_integrate takes forever to run,
>> could that be this is the main cause it takes that long?
>> Should we start profiling only that test set?
>
> Yes, that sounds reasonable. The integration code makes
> use of the sign-inference code, to which DGR and DLS belong,
> so maybe it is actually true that they are doing something
> that is taking a long time.
Well, I found a reason why ABCL may be taking so extremely long:
in SPRDET.lisp, there's a top-level special declaration of the
variable name X. In ABCL such declarations are retained after file
compilation completes (which is allowed by the spec). Hence, after
compilation of sprdet.lisp, any reference to a variable with the name
X, or creation of a binding thereof, is a special binding.
In ABCL, there's a non-trivial difference between evaluation of a
special variable versus a local variable.
So, renaming the special variable could be a solution, but that would
require a change on part of Maxima; I'm thinking about how to revert
the side effect at the end of the file compilation. That's a
non-trivial change to ABCL. I haven't figured it out yet.
Bye,
Erik.