Unexpected(?) non-overlapping instances - Haskell

Welcome to the Functional Programming Zulip Chat Archive. You can join the chat here.

Georgi Lyubenov // googleson78
{-# LANGUAGE FlexibleInstances #-}

class F x

instance F (a -> b)

instance F a

I would expect the two instances for F to overlap. Any function type matches both instances, no?


Can you actually use them?

Georgi Lyubenov // googleson78

I forgot/didn't know that overlaps are only emitted at call-site