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

From: Asumu Takikawa (asumu at ccs.neu.edu)
Date: Fri Oct 10 11:15:17 EDT 2014

On 2014-10-10 07:29:47 -0400, Neil Toronto wrote:
> Does this mean most instances of GUI classes can now cross the contract
> boundary?

Not quite, because the algorithm to create the mutually recursive
contracts is currently baaaaaad. Like use all of your memory and
terminate in 5 years bad.

I have a somewhat better way to do this in a pull request, but I just
discovered yesterday that the new framework types that Phil has added
(yay!) are also challenging to translate to contracts.

In particular, I was getting zo files that are 460MB or so of contracts.
I got it down to about 64MB, but it still takes 5 minutes to compile
that file.

I have an idea for how to get this down to a reasonable number, but it
requires changing the class type representation so I still need some
time to hack on it.

Cheers,
Asumu

Posted on the dev mailing list.