Drawbacks ========= MLton has several drawbacks due to its use of whole-program compilation. * Large compile-time memory requirement. + Because MLton performs whole-program analysis and optimization, compilation requires a large amount of memory. For example, compiling MLton (over 140K lines) requires at least 512M RAM. * Long compile times. + Whole-program compilation can take a long time. For example, compiling MLton (over 140K lines) on a 1.6GHz machine takes five to ten minutes. * No interactive top level. + Because of whole-program compilation, MLton does not provide an interactive top level. In particular, it does not implement the optional <:BasisLibrary:Basis Library> function `use`.