------------------------------- module TupleReplicate where import Language.Haskell.TH tupleReplicate :: Int -> Q Exp tupleReplicate n = do id <- newName "x" return $ LamE (VarP id) (TupE $ replicate n $ VarE id) -------------------------------
という例がある
$(tupleReplicate 2) が a -> (a, a) という型の関数 $(tupleReplicate 3) が a -> (a, a, a) という型の関数 と ghc-mod は教えてくれる?