7:02:33drmeisterI'm looking at timing data when Cleavir compiles the ironclad package.
7:02:40drmeisterThere is one function that takes 40 minutes
7:03:08drmeisterI'm looking for it - it isn't in my local repo of ironclad (obviously out of date)
7:04:32beachI think if you could characterize what is special about that function, and then get some timing data, that would be a good start for improving compilation times. As opposed to guessing and improving parts that have only a marginal impact on performance.
7:05:42beachI am personally guessing (but I don't want my guess to be the basis if an attempt to improve it) that the way lexical compile-time environments are handled could be problematic, especially if your generic dispatch is not terribly efficient.
7:06:20beachThe number of local variables is a hint that I might be right.
7:10:09drmeisterHe might know this already - I'll update him tomorrow.
7:10:26beachBy "yours", I meant "Clasp", not "drmeister".
7:11:01beachSince dynamic extent is fishy, I am reluctant to include it in SICL until I know more about it.
7:11:33beachSBCL basically trusts the programmer's declaration, which would be unacceptable in SICL, for safety reasons.
7:12:49drmeister::notify Bike - One ironclad function (http://paste.lisp.org/display/350808) - takes a huge amount (2439 seconds) - the pass is mark-dynamic-extent (1818 seconds). The next function after that is only 259 seconds.
7:12:49Colleendrmeister: Got it. I'll let Bike know as soon as possible.