8 ms·
I REALLY want to use a native ML language[1] but they all seem to be catered towards academics. If you want success within companies and not universities, then
by devmunchies 4y ago
I REALLY want to use a native ML language[1] but they all seem to be catered towards academics.
If you want success within companies and not universities, then you need to treat the language as a product, serve the customer by investing time into documentation, guides, and branding just like with any product. I say this as a fan of ML languages, posts that complain about another language (OCaml) being more popular even though it is an inferior doesn't get new users.
[1]: I currently use F# daily but would be happy to switch to a variant of SML if it made sense.
- mhd 4y agoI understand the need for good documentation and tooling, but "languages as a product" are one of the more horrible aspects of the current dev environment. First of all, this mostly means that compiler and language are the same product. Second, it leads to the release early/often dev cycle which seems ill-suited to a language and its core library (remember core libraries?). And language "branding"? What are we talking about here? TIOBE-SEO? Cute logos? Cute in-group names ("pythonist", "rustacean", "gopher" ...) By the way, wasn't there a "ML for the Working Programmer" aeons ago?
- cannam 4y ago> By the way, wasn't there a "ML for the Working Programmer" aeons ago? There was. It was written by the author of this very submission and you can download it free from his site (follow the link trail from author's name at the bottom of the article). Great book, a real favourite, though I'm not sure it totally captures the anxiety-driven copy-paste frenzy of the true working programmer. There is one SML compiler that has an extremely cute logo - SML# (https://smlsharp.github.io/en/ https://smlsharp.github.io/en/)
- devmunchies 4y ago> And language "branding"? What are we talking about here? “Branding Power” would be where given the choice between two products, the customer will choose the more expensive (or equally priced) product based solely on perception of brand quality or other brand characteristics. Think buying store brand vs buying name brand, an expensive name brand electronic item vs a cheap knock-off from a no-name Chinese manufacturer (the Chinese one might actually be better but that’s the point). So not just a logo or cute drawings. It’s part of a more holistic experience, but especially the perception which is where logos and the like come into play. We engineers can stomp our feet but those are the rules of the game.
- c-cube 4y agoI think calling OCaml "inferior" is misleading in 2022. OCaml kept evolving (easier when not bound by a standard) and grew many features way beyond what SML offers. Things like more expressive pattern matching, GADTs, first class modules, etc. The tooling (lsp, dune, ocamlformat) is also stronger these days. That's why I think SML and OCaml are not strictly better than one another.
- 3836293648 4y agoI thought F# was native these days?
- yawaramin 4y agoNot really, at last check it just bundles the entire .Net runtime with the compiled image. It's basically the equivalent of https://github.com/vercel/pkg https://github.com/vercel/pkg or similar tools.
- 3836293648 4y agoI was referring to this https://learn.microsoft.com/en-us/dotnet/core/deploying/native-aot/ https://learn.microsoft.com/en-us/dotnet/core/deploying/nati... Have I missed something? Because that page says pretty clearly that it's fully precompiled. It's not default, but it's an option
- yawaramin 4y agoFrom that page: > The app will be available in the publish directory and will contain all the code needed to run in it, including a stripped-down version of the coreclr runtime. Also check out the limitations section on the page. Some pretty big ones, including 'Limited diagnostic support (debugging and profiling).'
- yawaramin 4y agoEffectively, the native ML language that is the actual modern-day industrial-strength language fit for today, is OCaml.