implementation module builtin import Data.Func import check builtin :: [([Char], Scheme)] builtin = [(['_if'], Forall [['_ift']] $ TBool --> TVar ['_ift'] --> TVar ['_ift'] --> TVar ['_ift']) ,(['_eq'], Forall [['_eq']] $ TInt --> TInt --> TBool) ,(['_mul'], Forall [['_mul']] $ TInt --> TInt --> TInt) ,(['_add'], Forall [['_add']] $ TInt --> TInt --> TInt) ,(['_sub'], Forall [['_sub']] $ TInt --> TInt --> TInt) ]