Posso solo rispondere da una posizione di incertezza sugli interni di Google NaCl, ma conosco un po 'di MLton.
In teoria, dovrebbe funzionare. In realtà, MLton utilizza la memoria in modi molto specifici e si aspetta di avere il controllo sull'ambiente. La trappola principale che posso vedere è se NaCl limita alcuni tipi di operazioni che possono essere eseguite al fine di garantire l'integrità e la sicurezza dell'ambiente di esecuzione. This link suggerisce che questo potrebbe non essere un problema però.
Inoltre, il codice C generato da MLton è davvero, davvero stravagante. Ancora una volta, dipende esattamente da ciò che NaCl rinuncia in termini di piena generalità dell'ambiente per garantire la sicurezza. Avrai un controllo molto piccolo sul codice che MLton emette, e riscrivere il runtime è un'impresa da non sottovalutare se dovessero essere necessarie modifiche. Vorrei vedere se funziona e quindi iniziare a modificare qualsiasi parte del sistema di runtime che causa problemi.
Per inciso, se ottieni il codice MLton con il browser, mi piacerebbe vedere i risultati! : D