2013-06-07 5 views
5

私はData.Functor.Composeを試していて、ghciで試してみるときにShowインスタンスを書きたいと思っていました。私は(働いている)持っていることは次のとおりです。Data.Functor.ComposeのShowインスタンスをFlexibleContextsなしで作成する

{-# LANGUAGE FlexibleContexts #-} 
instance (Show (f (g a))) => Show (Compose f g a) where 
    show = show . getCompose 

私が思っていたどのようなものです:FlexibleContextsなく、このショーインスタンスを記述する方法はありますか?

答えて

3

私は考えられません。 GHC documentation for FlexibleContexts引用する:ハスケル98で

を、インスタンス宣言の文脈におけるアサーションは頭の中で発生する型変数であり、フォームCのAでなければなりません。

+0

ありがとうございました!これらの種類の「表現できない」ケースを言語で記述することを知っているドキュメントはありますか? –

+0

ハスケルのレポートとGHCのドキュメントに加えて、私の心には何も来ません。 –

関連する問題