@@ -15,9 +15,9 @@ import qualified Control.Monad.State as State
1515import qualified Data.List as List
1616import qualified Data.Map as Map
1717import qualified Data.Set as Set
18−import qualified Data.Text as Text
1918import Data.Text (Text)
2019
20+import qualified AST.Helpers as Help
2121import qualified AST.Type as T
2222import qualified AST.Variable as Var
2323import qualified AST.Module as Module
@@ -86,7 +86,7 @@ builtinTypes =
8686 , kind 0 ["Int","Float","Char","String","Bool"]
8787 ]
8888 where
89− tuple n = ( Text.pack ("_Tuple" ++ show n), n )
89+ tuple size = ( Help.makeTuple size, size )
9090 kind n names = map (\name -> (name, n)) names
9191
9292
@@ -106,12 +106,12 @@ makeCtors env unions =
106106 let (args, result) = tipe (map (VarN) vars)
107107 return (length args, vars, args, result)
108108
109− tupleCtor n =
109+ tupleCtor size =
110110 let
111111 name =
112− Text.pack ("_Tuple" ++ show n)
112+ Help.makeTuple size
113113 in
114− (name, inst n $ \vs -> (vs, foldl (<|) (getType env name) vs))
114+ (name, inst size $ \vs -> (vs, foldl (<|) (getType env name) vs))
115115
116116 builtins :: Dict Instantiator
117117 builtins =