Build system, take 2 + 1/2



>>>>> "Rupert" == Rupert Swarbrick <rswarbrick at gmail.com> writes:

    >> On the other hand, if you use gcl and never build sys-proclaim except
    >> when binary is made, what you ship could be subtly broken compared to
    >> you've been testing with.  Maybe because gcl with sys-proclaim elides
    >> some type check because you've proclaimed functions and some code was
    >> previously depending on the type check.  
    >> 
    >> While this scenario is hypothetical, it's a possibility.

    Rupert> Hmm, I guess so. But that argument works with any variation in how we
    Rupert> build. I mean, there could be some weird interaction that means a change
    Rupert> I make to foo.lisp breaks Maxima when built with SCL, say. We don't
    Rupert> require that every change is tested on every lisp implementation with
    Rupert> every set of build flags before it is committed (thank goodness). I'd
    Rupert> argue that this sort of error should be very rare and get fixed as a
    Rupert> regression quickly enough. Also, we don't actually use type declarations
    Rupert> all that much in Maxima, I don't think, which makes it even less likely
    Rupert> to be a problem.

I only pointed this out because gcl, unlike every other lisp, has this
special case and because it is, AFAIK, the lisp that is used with the
windows installer, so we want to be sure it works.  And haven't we
seen bad behavior because sys-proclaim was out-of-date wrt to the
code?

Ray