OCaml's domains


I’ll second this. I wrote a lot of float-heavy code in my academic life and industry life using OCaml and enjoyed the experience a lot.


Ok, well - I’m glad I was wrong about this.


Younger people in the community, you mean Janestreet paying people full time to work on Dune and migration of a huge number of packages by Mirage people (who are all 20 years old dev, it’s a well known fact)?
Or you mean big investments to develop opam (ocp and mirage, only newcomers and teenagers)?

You know why no one fixed the build system mess before? Because it’s a hard problem, it takes a very long time and no one is ready to work for free one whole year just to please you.

You want shiny libraries, big documentation, what about writing all this? Many people in the ocaml community are professional ocaml developers. Which means they write ocaml code for a company, not for the community. Lucky for us, many companies are nice enough to open code when possible. But it doesn’t mean all those developers have to give their free time to wrote new libraries to solve problems of other people.

It’s easy to complain that members or the community are not working hard enough and are not welcoming. But it seems to be hard to get actual empathy.

I highly appreciate that some people here are not just complaining but presenting facts and volunteering to improve the situation.


We can’t magically find new leaders and founding to make those people work on improving the community. Sure it would be nice, but there is a limited number of OCaml developers, even more limited number of OCaml developers willing to give their free time. And it’s hard to compete with big communities.

Also, ocaml doesn’t have curly braces so it cannot win this battle.


I’m going to heed this excellent advice and ask people to consider staying somewhat in-topic – OCaml’s domains. I think it would help in general if people paid a bit more attention to staying in-topic. (Also, when we discuss big-picture questions such as “OCaml (non)-adoption”, it’s better to focus on actionable things to do rather than generic/vague issues.)

Edit: @bluddy was faster and already created a new thread: Community building. Let’s move the relevant conversation there.


From my rather detached point of view the main problem of OCaml is the lack of a benevolent dictator, someone who could define current goals, priorities and a vector of development. It seems that OCaml is being developed by scattered groups of (very smart, but scarce) people, it’s rather unclear, what should be done or what would be ready to the next release, releases seems to be a bunches of pull requests which were reviewed up to the moment of a release. So the development pace is relatively slow and the goal is ambiguous, nobody seems to have a clear picture in mind what OCaml would look like 3 years from now (would it support multicore? implicits?). Haskell development process looks much more vigorous.


The one area where Ocaml outshines everybody is program analysis + writing compiler tools, it even beats Haskell there.


The real problem with the “State Of Ocaml” is the fact that the groups of people who use it the most are,

People who like writing compiler tools.

European Scientists.

Comp Sci professors and grad students who love it as a teaching language, and like making toys in it on the weekends.

Hipster Douche Systems Programmers (I fall under this category).

These are all groups of people who tend to reinvent the wheel … a lot, refuse to agree upon standard big frameworks or libraries, and who start a lot of projects they never finish, and are terrible at promoting themselves.

The other thing is the common obsession with modularity, in the ocaml community, most of the time when we are making libraries apart from like facades for blatantly obvious use cases, we never make things that just magically work out of the box, then you have the fact that unless a big company osed it, chances are the library is unmaintained.

The Erlang community is similar, in that regard to the point where we get called toxic very often, the sort of reality is though the community’s culture creates a self perpetuating cycle.

I do think though that if we were a more smug community, we could get a lot of users, I mean look at Haskell, yes it’s a good language and all, and has lot’s of actually good devs, but most of the neophytes come in so that they think they can feel better than other people, but that’s sort of a cop out to me.