4 ms·
I used to scoff to the language impurity and no operator overloading. Ocaml always felt like a beaten ML, always second in class compared to haskell. As usual,
by wakeupcall 4y ago
I used to scoff to the language impurity and no operator overloading. Ocaml always felt like a beaten ML, always second in class compared to haskell.
As usual, superficial views completely change when you actually start using the language. I never did anything mayor (1yr+dev) on it. I only contributed to existing projects and some small personal ones. I found it more pleasant to use compared to haskell (ghc effectively), less surprising, and and a lot more practical.
Combined with a live repl, it feels very close to how I normally work with lisp. In fact, I actually find it ambivalent compared to julia for explorative work and there's a lot of interesting and recent work being pushed to opam regarding this (dataframe/sci/numerical plotting libraries).
It's old, and thus less sexy/marketable.
- phplovesong 4y agoYes! I have my vim open and a split below where i run utop. Then i can evaluate any expression with <C-c C-c> and see the result instantly in utop. I usually also run a smaller split where i run dune runtest -w, so all tests are run on each save. For a compiled language OCaml is incredibly dynamic when developing. Just like a lisp.
- bruh2 4y agoYou may also like this discussion in the OCaml forum: https://discuss.ocaml.org/t/whats-your-development-workflow/10358 https://discuss.ocaml.org/t/whats-your-development-workflow/...
- nequo 4y ago> dataframe/sci/numerical plotting libraries What libraries do you recommend for these? I would love a statically typed alternative to R.
- thangngoc89 4y agoCheck out OWL (https://ocaml.xyz/ https://ocaml.xyz/). It's an umbrella project for anything related to data sciences in OCaml.
- mattpallissard 4y ago> It's old, and thus less sexy/marketable It's been gaining traction in the past few years. I've never dealt with it professionally, but just from my hobby stuff I've had recruiters reach out.