owlbarn / owl

Owl - OCaml Scientific Computing @ https://ocaml.xyz
MIT License
1.2k stars 120 forks source link

Move project to ocaml-community #656

Closed bluddy closed 4 months ago

bluddy commented 4 months ago

Since you're concluding the project, can you please move it to ocaml-community so it can be maintained?

mseri commented 4 months ago

I don't know enough about machine learning, but if it is moved to ocaml-community I'd be happy to help maintaining the linear algebra and numerical methods part.

bluddy commented 4 months ago

I think that after moving Owl, it needs to be split up more cleanly into multiple packages. The python model is a good one to follow. We need a very easy to use numpy-equivalent that is top-notch. The current hierarchy still confuses people and dissuades them from using Owl_base. We then need an added library for linear algebra and numerical methods like scipy. And finally, we need a separate library for machine learning, with the understanding that the machine learning world is the fastest moving field nowadays and anything we do will be purely experimental. It's virtually impossible to keep up with the leading libraries in this domain.

ghisvail commented 4 months ago

There is a section of documentation entitled Reductionism vs. Holism, which argues against the Python ecosystem of scientific libraries. Very much worth a read before considering any kind of changes.

bluddy commented 4 months ago

I apologize but I don't find these arguments too convincing. For one thing, it's very hard to make a strong argument when python is going strong and the Owl ecosystem barely took off. But there are other counter-arguments as well:

nilsbecker commented 4 months ago

I agree wholly with the view of bluddy that modularity is king. Owl can still form a coherent family of type-compatible libraries, which invites other authors to connect. I could volunteer some time to work the docs of the numpy-equivalent sublibrary when it materializes. Now that @jzstark has taken over maintenance, are there any plans for the future available? As I read the announcement, he still has limited time available which suggests that any refactoring efforts would have to be carried forward by others?

mseri commented 4 months ago

I agree as well. If we have enough freedom of operation, I'd be happy to join the effort of making it more modular and having a shared more uniform api across owl base and owl

jzstark commented 4 months ago

Thank you all so much for the constructive feedback! Modularity is indeed very important. Like I mentioned in the announcement, currently the plan is to keep the holistic design of owl and have good modularity within it, instead of making big structural change. If you have any idea about contribution, please feel free to make PR. Thx!