And the type signature given by ghci is
myLength :: (Num t1) => [t] -> t1
But why is the signature not written as:
myLength :: [t] -> (Num t1) => t1
or something similar?
I thought that the Num typeclass being first implied that it was the function's first argument.