[racket-dev] [plt] Push #25698: master branch updated

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Fri Nov 16 17:02:20 EST 2012

At Fri, 16 Nov 2012 14:43:56 -0700, Neil Toronto wrote:
> On 11/16/2012 02:10 PM, mflatt at racket-lang.org wrote:
> > 9a48e5d Matthew Flatt<mflatt at racket-lang.org>  2012-11-16 14:03
> > :
> > | math: avoid import at unnecessary phase
> > |
> > | This repair avoids using at compile time external libraries that
> > | are needed at run time.
> > :
> >    M collects/math/private/matrix/matrix-sequences.rkt | 4 +---
>  >
>  > [...]
>  >
> > collects/math/private/matrix/matrix-sequences.rkt
> > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> > --- OLD/collects/math/private/matrix/matrix-sequences.rkt
> > +++ NEW/collects/math/private/matrix/matrix-sequences.rkt
> > @@ -5,9 +5,7 @@
> >            in-column)
> >
> >   (require math/array
> > -         (except-in math/matrix in-row in-column)
> > -         (for-syntax (except-in math/matrix in-row in-column))
> > -         (for-template (except-in math/matrix in-row in-column)))
> > +         (except-in math/matrix in-row in-column))
> 
> Was this the only necessary change? 

Yes.

> If so, it's a little weird, because 
> libmpfr isn't supposed to be loaded until its first export is used. The 
> constants are all delayed (their names are bound to macros that expand 
> to uses of `force'), and every function and delay thunk is wrapped with 
> code that loads the external library.

`math/private/flonum/expansion/expansion-log' has

 (define-values (log2-hi log2-lo) (bigfloat->fl2 log2.bf))


> Also, I have no idea what it all has to do with a typed submodule in 
> "math/special-functions.rkt", which is apparently what the error was 
> complaining about. I can't work out the dependency chain. Help?

That was a Racket bug, now fixed.

Posted on the dev mailing list.