Hi,<div><br></div><div> Defunctorization is one of my favorite features of MLton. I love knowing that I can use functors with abandon and there will be no runtime performance penalty (other than that possibly arising from code size.) Thanks!</div>
<div><br></div><div>Right now I have a theorem prover for modal logics. There is only one theorem prover, but it is parameterized by an algorithm that decides a visibility relation. The change of the algorithm is minor, but affects even the most basic data structures. I currently have 8 different algorithms for the 8 logics I'm playing around with. </div>
<div><br></div><div>Unfortunately, this makes my theorem prover take a very long time to compile. One logic will compile in about 40 seconds. With all 8 logics, it takes over 3 minutes (2 Gh dual-core pentium, 4 GB memory). This is due to defunctorization, right? Is there any way to turn that off when I'm debugging, and turn it on again for production compilation? I tried mlton -expert true --help but didn't see anything. I figure the answer is no, but just thought I'd ask, in case you guys have any ideas for me.</div>
<div><br></div><div>Thanks!</div><div><br></div><div>Sean</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div>