* supports for all of Standard ML, including modules, pattern matching, higher-order functions, generative exceptions, etc. * Standard ML Basis Library support * SMLtoJs supports calling JS functions and for executing plain JS. Standard ML functions may be exported and called by JavaScript code. * Simple DOM access. Simple DOM access and support for installing Standard ML functions as DOM event handlers and timer call back functions. * Optimization. All Standard ML module language constructs, including functors, functor applications, and signature constraints, are eliminated at compile time. SMLtoJs performs a series of compile time optimizations, so it generates fairly efficient JS code * Reactive Web Programming. SMLtoJs has library support for Reactive Web Programming. See the rwp_ex1 example. The simple library API captures the basic notions of behaviors and event streams as well as the concepts of behavior transformers and event stream transformers.
jsc is a decompiler or a cross compiler if you will. It is not a source-code parser nor an IDE. It is a command line utility like any other compiler. jsc was originally an anagram for csharp to javascript.
H. Santos, P. Alves, I. Costa, und F. Quintao Pereira. Proceedings of the 2013 IEEE/ACM International Symposium on Code Generation and Optimization (CGO), Seite 1--11. IEEE Computer Society, (2013)
M. Chevalier-Boisvert, und M. Feeley. 30th European Conference on Object-Oriented Programming (ECOOP 2016), Volume 56 von Leibniz International Proceedings in Informatics (LIPIcs), Seite 7:1--7:24. Dagstuhl, Germany, Schloss Dagstuhl--Leibniz-Zentrum fuer Informatik, (2016)