私は次の定義を持っています
data AST
= Number Integer
| Identifier String
| String String
-- | Operation BinOp AST AST
| Query String
deriving (Show, Eq)
data Tuple = Tuple {cmd :: String,
cid :: AST,
argumentList :: [AST],
queryList :: [AST]} deriving (Show, Eq)
たとえばcidを印刷しようとすると、エラーが発生します
No instance for (Show (Tuple -> AST)) arising from a use of `print'
ASTとタプルの両方がショークラスのメンバーであるため、それは私を驚かせます。cid、argumentList、queryListを印刷可能にするにはどうすればよいですか?