Dean, it is great to see that OCaml is again seen as attractive. This is fairly different now than, say, 10 years back, when OCaml had a really hard time (academic projects were finished, and it was unclear whether other users could be found). At that time, this home was really fragile, short before collapsing. Fortunately, this did not happen, and now there is a supporting community, small but to large parts brilliant. In some sense, there is now the problem of too much choice. You say you'd like to see 100000 packages. Actually, I'm fearing such a situation - picking up a common metaphor it would mean there are lots of wheels which are incompatible to each other. That's not only the choice of standard library, but also other important base libraries like for asynchronous networking. I'm not against choice of implementation, but this small community should definitely do more to avoid unnecessary fragmentation. Jeremy Yallop kind of answered this for the standard library: the one coming with the compiler should be the one establishing base types (like result) so that other libraries can pick that up and remain compatible on this level. Libraries like Core would then be pure add-ons. Fortunately, OCaml added some features that could turn out as very helpful in that respect. In particular first-class modules help here: you can now pass modules around like values. I'm hoping that this is picked up to make currently incompatible implementations again interoperable on a fundamental level (e.g. Async and Lwt could agree on a common module type for the core features so that users can run Lwt with Async's core and vice versa). This gives users additional freedom, and they are not faced with the question whether they should either go to Lwt-land or Async-land. But anyway, I guess you are not yet at this point, and are enjoying things that are working well. I recently got thrown into the muddy waters of Scala, and while they are better organized it is feeling like a dinosaur language. I definitely prefer OCaml's minimalism. Gerd Am Donnerstag, den 30.06.2016, 06:01 -0400 schrieb Dean Thompson: > A few years ago, with over 30 years of programming experience including 15 years primarily in Java, I decided I needed a new “home” programming language. I then spent a frustrating few years studying what’s out there. I have felt like a man without a country. I developed fairly serious crushes on Scala and then on Haskell, but after a few serious dates with them I moved on. I have read deeply about many, many more. > > I have converged on OCaml. It is a beautiful language and a highly practical functional language. Although infrastructure such as compilers, editor/IDE support, and libraries are on the minimal side, the essentials are all there and are lovingly maintained. Although the community is small, it is smart, friendly, and engaged. Some amazing technology is available or work-in-progress (such as js_of_ocaml and Mirage). > > But this feels like a fragile new home unless we can build a bigger community! For one thing, if our community shrinks much, it may no longer be viable. Also, while I love 1,000 packages on opam, I want 100,000! > > As a newcomer to the community, I have to say that there are daunting barriers to a potential new user considering OCaml for a new project. If you like starting on a new programming language with a book, as I do, you likely start with Real World OCaml. That book is very inspiring! But then when you try to move from RWO to, well, using OCaml in the real world, you discover that there is no consensus on Core as a standard library, and that Camlp4 is deprecated. > > It appears to me that if, instead, you come to OCaml as a potential new user through ocaml.org, there are other barriers. It is hard for me to judge because I came through RWO, but it appears to me that the lack of consensus on standard library comes up pretty quickly. I’m more of a language manual guy than a tutorial guy, so I quickly notice that, although the OCaml language manual is well written, has a lovely introductory flow, and has great examples, it fairly quickly gets into terse description of language constructs while providing limited help to a beginner in developing intuition for the language as a whole and how best to use it. > > This is one man’s experience and one man’s opinions. Do others on this list feel the ramp to OCaml adoption is smoother than my impression suggests? Who here is excited about making OCaml approachable to newcomers? Where is the main ongoing work on this? Who are the main leaders from this perspective? > > Dean > -------- > Dean Thompson > http://www.linkedin.com/in/deansthompson/ > > -- ------------------------------------------------------------ Gerd Stolpmann, Darmstadt, Germany gerd@gerd-stolpmann.de My OCaml site: http://www.camlcity.org Contact details: http://www.camlcity.org/contact.html Company homepage: http://www.gerd-stolpmann.de ------------------------------------------------------------