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&#39;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&#39;m debugging, and turn it on again for production compilation?  I tried mlton -expert true --help but didn&#39;t see anything.  I figure the answer is no, but just thought I&#39;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>