3 ms·
I am part of Owl contributors/maintainers. You are right that the ecosystem is small, and will likely be always behind Python, R and Julia. But considering how
by mseri 6y ago
I am part of Owl contributors/maintainers.
You are right that the ecosystem is small, and will likely be always behind Python, R and Julia. But considering how small the community around numerical methods in OCaml is, I think the work that went into owl and this book is incredible and may help raising awareness and growing the userbase.
I think one of our current limitations is the lack of a high quality, full-featured plotting library. There are some which are used for publication level plots, but they are nowhere near the experience of plotly, matplotlib, ggplot2 or julia's plots.
In any case, the community seems to be slowly growing already, so there is some hope.
I think the best would be if we can start integrating it with SciML and similar projects.
- 7thaccount 6y agoThanks for the hard work! I always appreciate any contributors even if I have only used OCaml a few times. I think y'all are definitely raising some awareness and I agree the lack of a plotting library is a major hurdle. You can always call out to GNUPlot from the terminal, but most folks probably don't want to do that.
- mseri 6y agoThanks for the kindness! There is actually a GNUPlot backend for Owl. Works very well, but is a bit lowlevel: https://github.com/hennequin-lab/gp https://github.com/hennequin-lab/gp Similarly, I use https://github.com/mseri/ocaml-gr https://github.com/mseri/ocaml-gr but it is a safe lowlevel binding. I hope one day to have the time to wrap it into an interface similar to Julia's one.
- 7thaccount 6y agoNot a problem at all. Thanks for chatting and sending the links. I wish you the best on this project. Maybe it will help get OCaml some additional/well-deserved attention and love. I'll keep my eye on the project too. Is anyone working on data frames?
- mseri 6y agoI am only aware of the discussion at https://discuss.ocaml.org/t/ocaml-vega-lite-and-ocaml-dataframes https://discuss.ocaml.org/t/ocaml-vega-lite-and-ocaml-datafr... and at this chapter of the book: https://ocaml.xyz/book/dataframe.html https://ocaml.xyz/book/dataframe.html I don’t think there is work going on on that side of owl at the moment if this is what you are asking.
- bachmeier 6y ago> You are right that the ecosystem is small, and will likely be always behind Python, R and Julia. But you should be able to call those languages from OCaml. For instance, RInside https://cran.r-project.org/web/packages/RInside/index.html https://cran.r-project.org/web/packages/RInside/index.html lets you call R from any language with a C FFI. A very simple solution (even if not quite as convenient as a full OCaml solution) that lets someone write OCaml if that's their preferred language. I helped add that functionality to RInside and I've been doing that for years so I can use D for my research.
- 7thaccount 6y agoI said it earlier, but if I have to call R from another language, in most cases I'd rather just use R by itself. Of course there are reasons why you might integrate the two. Perhaps you have an R expert doing the statistics work and the back end developer gluing everything together. That's fine, but at some point the system becomes pretty confusing and is a giant leaky abstraction.
- mseri 6y agoIndeed! There are already OCaml bindings for many R and python packages in the opam repository (opam is the package manager for ocaml), as well as C and fortran libraries. Similarly there are now a few packages to interact with rust. I think, right now, only a library to interact with julia is missing.