This may be a stupid question: Does ‘anyone’ use SML? Its usage that I noticed seems to have dropped in the last decade.
yes and no. Yes people still write sml but its a very very small community. It has a special place in the hearts of PL folks and compiler writers but you won’t be getting hired to write webscale sml. You can use it for small projects just fine, but the lack of libraries is a bother.
Adam Chlipala wrote a tool called domtool years ago that is in many ways a brilliant configuration tool for hcoop.net. I always thought it was a little weird to write it in SML because of only one or two people would be able to really work on it. But quite understandable considering his thesis was in program verification.
Would you agree that in terms of ML usage, that Ocaml has pretty much ‘taken over’ mindshare? It seems the other big one is pretty much Haskell (where most people seem to have gone). Outside of that small community, a larger renaissance of sorts seems to be starting with some of the tools of the paradigm being adopted by other communities.
Yeah I’d forgotten that Adam has actually written quote a few sml libraries for web stuff. A lot of that work funneled into his ur/web project iirc. Ocaml does seem to be “winning ” I’ve never really been super motivated to switch, the places where I need lots of libraries I just use Haskell shrug
Sml probably won’t ever die since its formally specified and fun to compile.. It is certainly being absorbed by other languages though which I think is grand :D
Oh, it’s interesting that those are the same person.
Ur/web is pretty exciting to me in a few ways - I remember when this tutorial on its records system for Haskellers was written… ignore the parts of that which pertain to the ongoing records-in-Haskell debate, and perhaps if your interest is in the implementation details, click directly through to that site.
Unfortunately it’s such a small project that it’s really hard to justify writing things in it. :/ My own interest in a language is based on its ideas, but I can’t realistically advocate for using it unless it has library support.
I’d say ocaml and F# are the big MLs on the block right now. SML still holds a warm place in many programmer’s hearts, though.
I forgot about F#.
you won’t be getting hired to write webscale sml
If you don’t mind using a fairly boring stack on the database side, Ur/Web is a possible option/salve for anybody wanting to do ML for web services. This is how https://bazqux.com/ was built and it’s quite fast.
I stick to Haskell for my paid and unpaid work, but for anybody that prefers ML, Ur/Web seems like a cool option to me. I don’t know if they’re generative or applicative modules, but Adam Chlipala does claim to have proper modules driving some of the core functionality.