Hacker News new | past | comments | ask | show | jobs | submit login

You're leaving out a ton of complexity present in ocaml, including first-class mutable references and all their consequences (including broken polymorphism under eta-reduction), order-dependent evaluation, side effectful imports, etc.. Extensions are also common in production ocaml code.

I agree the typeclass stuff in Haskell can get complicated, but the more abstruse typeclass features are used about as much as the similarly abstruse ocaml object system. It's usually quite straightforward, just like ocaml modules are usually (but not always) quite straightforward.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact