If you're going to write a large component of a system, always write an interface even if it has one implementation.
A quick list of features which Haskell benefits from that your language probably doesn't