T2310.hs:5:22: Illegal result type signature ‘a’ Result signatures are no longer supported in pattern matches In a lambda abstraction: \ x :: a -> (x :: a) T2310.hs:5:39: Not in scope: ‘co’ Perhaps you meant one of these: ‘c’ (line 5), ‘cos’ (imported from Prelude)