Even better is to follow up the original usage of that hack, by Lenart Augustsson (pretty much everything he does impresses me), where he embeds a BASIC interpreter in haskell and uses it to make
10 PRINT "hello"
valid :)
instance Num (MONEY -> Currency) where ...
Any hack with type "Money -> Currency" fits firmly in the "horrific" column.