i wonder why exactly cornell teaches OCaml instead of Haskell in its functional purrogramming course, but it’s purrobably the better choice pedagogically. every nice fundamental language feature that Haskell has that OCaml does not is a fundamental language feature students do not have to learn. which is useful when you are already overwhelming many of your students with the conceptual overhead of expurression-based, immutable-by-default, parametrically polymorphic purrogramming
similar reason that MIT used to teach Scheme, or that the How to Design Program authors developed Several Purrogressively More Featureful Versions Of A Really Basic Version Of Scheme