2 % (c) The University of Glasgow 2001-2006
6 -- The above warning supression flag is a temporary kludge.
7 -- While working on this module you are encouraged to remove it and fix
8 -- any warnings in the module. See
9 -- http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings
12 module ExternalCore where
16 = Module Mname [Tdef] [Vdefg]
19 = Data (Qual Tcon) [Tbind] [Cdef]
20 | Newtype (Qual Tcon) [Tbind] (Maybe Ty)
23 = Constr Dcon [Tbind] [Ty]
30 type Vdef = (Bool,Var,Ty,Exp) -- Top level bindings are unqualified now
40 | Case Exp Vbind Ty [Alt] {- non-empty list -}
43 | External String String Ty {- target name, convention, and type -}
44 | DynExternal String Ty {- convention and type (incl. Addr# of target as first arg) -}
52 = Acon (Qual Dcon) [Tbind] [Vbind] Exp
57 type Tbind = (Tvar,Kind)
75 | Lrational Rational Ty
86 type Qual t = (Mname,t)
90 primMname = "base:GHC.Prim"
93 tcArrow = (primMname, "(->)")