I don't see the chicken-and-egg problem in this case. Won't SML/NJ compile the MLton versions of ml.lex.sml? If so it would just mean that you need some ML compiler.