Orphaned instances in Haskell
When compiling my Haskell application with the -Wall option, GHC complains about orphaned instances, for example: Publisher.hs:45:9: Warning: orphan instance: instance ToSElem Result The type class ToSElem is not mine, it's defined by HStringTemplate . Now I know how to fix this (move the instance declaration into the module where Result is declared), and I know why GHC would prefer to avoid orphaned instances , but I still believe that my way is better. I don't care if the compiler is inconvenienced - rather it than me. The reason I want to declare my ToSElem instances in the Publisher module