Most people don't know the object system. Most advanced features are rarely used and kept well hidden in libraries internals (first class modules, extensible types, ...)
You will need to understand functors for some libraries, though, but I would guess that it's true for SML as well. :)
Random question, how hard would it be to port OCaml libraries to [s]ml ?
The opposite is pretty trivial, though.
brew install mlton
[1]: https://github.com/Homebrew/homebrew/pull/48694Getting the MLton compiler to install on OS X was pretty straight forward but I've never been able to get Basis to load properly.
I also recently burned an afternoon trying to install MLKit on OS X. This one seemed promising for its good docs, smltojs, and good FFI so I was bummed I couldn't get it work.
SMLNJ installs pretty easily but holy cow do you have to murder your PATH.
Eventually I settled for MoscowML which is a VM rather than native code but it has provided me the best ML on OS X experience so far. I also enjoy having the REPL.
Yours truly,
ML compiler/VM collector
There are some branches on the repo with more recent work to get it to compile on other platforms.
You've been there longer than I, but it's nice to see your involvement in /r/sml as well. Thank you!
I've used Alice ML on a couple of projects for a while and didn't want to see it die so I got permission from the original authors to host a mirror on github and keep the bitrot away. I forked from work that Gareth Smith did on bitbucket a few years back (with his permission) that fixed some issues and added features. I'm the only one working on it at the moment but hopefully others join in. It's survived this long!
It's great to see you keeping /r/sml active!
Dealing with unicode is a pain, but so far, we've been able to do what we need.
Been reading some SML while going through Okasaki's famous classic book.
Urweb is exceptionally great https://air.mozilla.org/ur-web-a-simple-model-for-programmin...
IMO it's not much of a mystery. For ~15 years "object oriented" was the biggest buzz word in computer science and OCaml was object oriented, while SML was not. At least in the objects, inheritance, and polymorphic way people wanted.
I learned ML via Caml Light, so when their designers rolled out OCaml, that was the only one I was following for a while until F# became a thing.
SML always seemed something that American universities were using. My only contact with it was reading the book "ML for the working programmer".
Back when I was in the university, our languages group department was very found of Caml Light, and used it for quite a few classes related to programming languages and compiler design.
DIKU Introduction to Programming organization on github has "ML Picture Library (for teaching purposes)" (https://github.com/DIKU-IP/InstagraML)
MoscowML credits some authors from Diku
http://studies.ku.dk/masters/it-and-cognition/profile-and-ca...
http://diku.dk/english/calendar2011/using_llvm_to_implement_...
https://en.wikipedia.org/wiki/Mads_Tofte
I cannot find a link to an SML course taught there but you'd expect one.
Also look at http://www.elsman.com/mlkit/ which incorporates many modern features, some of which can be found in similar form in Rust, recalling that the idea for regions wasn't invented by and is older than Rust.
There you'll find more Danish SML folks and links to SMLtoJs and somewhere down a link to the Smackage SML package manager and smbt Smackage build tool.
SML doesn't appear to be as dead as it seems from the outside.