Enumのinstanceになる型を宣言する方法を教えていただけますでしょうか
範囲がIntに収まる場合はわかるのですが、それより大きい範囲を使いたい
場合はどのようにすればよいでしょう。

class Enum a where
toEnum :: Int -> a

となっていてIntに収まらないといけないのかとも思ったのですが、

instance Enum Integer

とあって、下のsuccも動くのでできるのかもと。

Prelude> succ 1000000000000000::Integer
1000000000000001

とんでもなくアホな事を聞いてたらすいませんです。