Smlnj online dating
123.31 real 116.24 user 6.38 sys [[email protected] mlton.mlton]$ /usr/bin/time make mlton-compile ...238.44 real 232.01 user 5.49 sys As REPLs, Poly/ML and SML/NJ are nearly equivalent.It's at https://github.com/kfl/mosml/ (with an update in November 2012!) I have also got code that implements much of the new Basis Library for Moscow ML so that I can use both it and Poly/ML to implement HOL4.Bonus if the compilation model is simple and clear.Students in the class will also be using MLton to generate good binaries, but MLton is slow to compile and there are times when students need something they can interact with.
DEC) input) (* a function to read a real that spans till the end of line *) fun next_real input = Of (Text IO.input Line input) (* open input file and read the two integers in the first line *) val stream = Text In file val n = next_int stream val l = next_int stream val _ = Text IO.input Line stream (* a function to read the pair of integer & real in subsequent lines *) fun scanner 0 acc = acc | scanner i acc = let val d = next_int stream val (SOME v) = String (next_real stream) in scanner (i - 1) ((d, v) :: acc) end in (n, l, rev(scanner n )) end; fun my_solution ( n , l ,candidates ) = [2 ,3 ,5 ,4 ,6] fun agonas file Name = my_solution ( parse file Name ) But that may be the wrong solution - it depends on what the code is supposed to do.
I find the error messages from SML/NJ to be a little bit better; they tend to have more specific source locations.
Of course, when used as a REPL, SML/NJ's source locations are in terms of , for which line numbers aren't terribly helpful.
Here's what I know already: At the moment it looks as if either SML/NJ or Poly/ML would be the best compromise.
It has been many years since I did any serious work in Standard ML, and I would welcome information about other compilers or which of these alternatives is, in your experience, the fastest to interact and the easiest to learn to use.