Well, maybe &quot;writing a compiler&quot;? or &quot;building a multimillion-dollar Wall Street financial services firm&quot;?  :-)<p>In fact, I love and use both Haskell and Ocaml, and I view the two languages as cousins.  Both are functional.  Both have features the other doesn&#x27;t.  Ocaml has the best module system in the business, with functors for module abstraction (unbelievably useful).  This is much better than the current Haskell module system, though Backpack may narrow the gap.  Ocaml also has polymorphic variants, which are surprisingly useful.  Ocaml has some convenience features like named&#x2F;optional arguments that Haskell doesn&#x27;t.  And oddly enough, the lack of purity in Ocaml (if used judiciously) can be a real win.  You can do imperative programming without jumping through a lot of hoops.  You can have code which is purely functional from the outside but which uses imperative idioms internally for efficiency (yes, I know about unsafePerformIO in Haskell, but it&#x27;s much easier to do this sort of thing in Ocaml).  And Ocaml is usually faster both in compilation time and run time.<p>My overall take on it is that I prefer Haskell for small-scale programming but I prefer Ocaml for large-scale programming.  YMMV.