Here's a low priority issue. In this program:
If you hover foo, Merlin will tell you its type is 'a -> 'b -> 'b. But when you hover either 'b, Merlin will tell you its type is 'a, which is inconsistent with the previous hover. This can be a confusing user experience.