summaryrefslogtreecommitdiff
path: root/testdata
diff options
context:
space:
mode:
authorPéter Diviánszky <divipp@gmail.com>2016-04-28 02:01:29 +0200
committerPéter Diviánszky <divipp@gmail.com>2016-04-28 02:01:29 +0200
commit7e9105793bd0d5ff7197a5860ac5339dea677e0e (patch)
treefa003b495b78a8b5cb5e6505c72a32bc6e80e1b3 /testdata
parenta23ba9fced413f1b63640ba9bd81686a7eb59ee1 (diff)
switch to ansi-wl-pprint
Diffstat (limited to 'testdata')
-rw-r--r--testdata/Builtins.out780
-rw-r--r--testdata/Internals.out170
-rw-r--r--testdata/Material.out312
-rw-r--r--testdata/Prelude.out342
-rw-r--r--testdata/SampleMaterial.out2
-rw-r--r--testdata/adhoc.reject.out8
-rw-r--r--testdata/ambig.out2
-rw-r--r--testdata/complex.out44
-rw-r--r--testdata/concatmap01.out2
-rw-r--r--testdata/data.out52
-rw-r--r--testdata/data.reject.out2
-rw-r--r--testdata/dotdot01.out2
-rw-r--r--testdata/dotdot02.out2
-rw-r--r--testdata/empty.out6
-rw-r--r--testdata/framebuffer02.reject.out8
-rw-r--r--testdata/fromto.out2
-rw-r--r--testdata/id.out2
-rw-r--r--testdata/ifThenElse01.out2
-rw-r--r--testdata/instantiate.out2
-rw-r--r--testdata/instantiate2.out2
-rw-r--r--testdata/it.out2
-rw-r--r--testdata/language-features/adt/adt01.out2
-rw-r--r--testdata/language-features/adt/adt02.out2
-rw-r--r--testdata/language-features/adt/adt02.reject.out18
-rw-r--r--testdata/language-features/adt/adt03.reject.out2
-rw-r--r--testdata/language-features/adt/adt04.reject.out2
-rw-r--r--testdata/language-features/adt/adt05.out2
-rw-r--r--testdata/language-features/adt/gadt01.out2
-rw-r--r--testdata/language-features/adt/gadt01.reject.out2
-rw-r--r--testdata/language-features/adt/gadt03.reject.out10
-rw-r--r--testdata/language-features/adt/gadt04.reject.out12
-rw-r--r--testdata/language-features/as-pattern/as-pattern01.out2
-rw-r--r--testdata/language-features/as-pattern/as-pattern02.out2
-rw-r--r--testdata/language-features/basic-list/dotdot01.out2
-rw-r--r--testdata/language-features/basic-list/list01.out6
-rw-r--r--testdata/language-features/basic-list/list02.out6
-rw-r--r--testdata/language-features/basic-list/list07.reject.out8
-rw-r--r--testdata/language-features/basic-list/list08.out2
-rw-r--r--testdata/language-features/basic-list/list09.out2
-rw-r--r--testdata/language-features/basic-list/list10.reject.out8
-rw-r--r--testdata/language-features/basic-list/list11.out2
-rw-r--r--testdata/language-features/basic-list/list12.out2
-rw-r--r--testdata/language-features/basic-list/list13.out2
-rw-r--r--testdata/language-features/basic-list/list14.reject.out8
-rw-r--r--testdata/language-features/basic-list/list15.reject.out8
-rw-r--r--testdata/language-features/basic-list/list16.reject.out8
-rw-r--r--testdata/language-features/basic-list/listcomp01.out2
-rw-r--r--testdata/language-features/basic-list/listcomp02.out4
-rw-r--r--testdata/language-features/basic-list/listcomp03.out2
-rw-r--r--testdata/language-features/basic-list/listcomp04.out4
-rw-r--r--testdata/language-features/basic-list/listcomp05.out2
-rw-r--r--testdata/language-features/basic-list/listcomp06.out4
-rw-r--r--testdata/language-features/basic-list/listcomp07.out6
-rw-r--r--testdata/language-features/basic-list/listcomp08.reject.out8
-rw-r--r--testdata/language-features/basic-list/listcomp09.out2
-rw-r--r--testdata/language-features/basic-values/bool01.out4
-rw-r--r--testdata/language-features/basic-values/case01.out12
-rw-r--r--testdata/language-features/basic-values/case02.out4
-rw-r--r--testdata/language-features/basic-values/case04.reject.out8
-rw-r--r--testdata/language-features/basic-values/case05.out2
-rw-r--r--testdata/language-features/basic-values/case06.out2
-rw-r--r--testdata/language-features/basic-values/data01.out36
-rw-r--r--testdata/language-features/basic-values/def01.out6
-rw-r--r--testdata/language-features/basic-values/def03.out2
-rw-r--r--testdata/language-features/basic-values/def04.out4
-rw-r--r--testdata/language-features/basic-values/def07.reject.out6
-rw-r--r--testdata/language-features/basic-values/deforder01.out4
-rw-r--r--testdata/language-features/basic-values/deforder02.out4
-rw-r--r--testdata/language-features/basic-values/deforder03.out2
-rw-r--r--testdata/language-features/basic-values/deforder04.out2
-rw-r--r--testdata/language-features/basic-values/deforder05.out2
-rw-r--r--testdata/language-features/basic-values/deforder06.out2
-rw-r--r--testdata/language-features/basic-values/fixity01.out8
-rw-r--r--testdata/language-features/basic-values/fixity02.out40
-rw-r--r--testdata/language-features/basic-values/if01.out4
-rw-r--r--testdata/language-features/basic-values/if03.reject.out8
-rw-r--r--testdata/language-features/basic-values/if04.reject.out8
-rw-r--r--testdata/language-features/basic-values/indentation01.out4
-rw-r--r--testdata/language-features/basic-values/indentation02.out4
-rw-r--r--testdata/language-features/basic-values/infix01.out4
-rw-r--r--testdata/language-features/basic-values/infix02.out4
-rw-r--r--testdata/language-features/basic-values/infix03.out14
-rw-r--r--testdata/language-features/basic-values/lambda01.out8
-rw-r--r--testdata/language-features/basic-values/lambda03.out4
-rw-r--r--testdata/language-features/basic-values/let01.out10
-rw-r--r--testdata/language-features/basic-values/let02.out2
-rw-r--r--testdata/language-features/basic-values/literal01.out16
-rw-r--r--testdata/language-features/basic-values/operator01.out8
-rw-r--r--testdata/language-features/basic-values/operator02.reject.out6
-rw-r--r--testdata/language-features/basic-values/operator05.out2
-rw-r--r--testdata/language-features/basic-values/operator06.out2
-rw-r--r--testdata/language-features/basic-values/redefine01.reject.out6
-rw-r--r--testdata/language-features/basic-values/shadowing01.out2
-rw-r--r--testdata/language-features/basic-values/shadowing02.out6
-rw-r--r--testdata/language-features/basic-values/shadowing03.out2
-rw-r--r--testdata/language-features/basic-values/shadowing04.out2
-rw-r--r--testdata/language-features/basic-values/tuple01.out2
-rw-r--r--testdata/language-features/basic-values/tuple02.out6
-rw-r--r--testdata/language-features/basic-values/typesig01.out4
-rw-r--r--testdata/language-features/basic-values/typesig02.out4
-rw-r--r--testdata/language-features/basic-values/typesig03.out4
-rw-r--r--testdata/language-features/basic-values/typesig04.out4
-rw-r--r--testdata/language-features/basic-values/typesig05.out12
-rw-r--r--testdata/language-features/basic-values/typesig06.out8
-rw-r--r--testdata/language-features/basic-values/typesig07.out12
-rw-r--r--testdata/language-features/basic-values/typesyn01.out2
-rw-r--r--testdata/language-features/basic-values/typesyn02.out4
-rw-r--r--testdata/language-features/basic-values/typesyn03.reject.out4
-rw-r--r--testdata/language-features/basic-values/typesyn04.reject.out4
-rw-r--r--testdata/language-features/basic-values/where01.out22
-rw-r--r--testdata/language-features/basic-values/where04.out6
-rw-r--r--testdata/language-features/basic-values/where05.out8
-rw-r--r--testdata/language-features/basic-values/wildcard01.out2
-rw-r--r--testdata/language-features/guard/guard01.out2
-rw-r--r--testdata/language-features/guard/guard02.reject.out8
-rw-r--r--testdata/language-features/guard/guard03.out2
-rw-r--r--testdata/language-features/guard/guard04.out2
-rw-r--r--testdata/language-features/guard/guard05.reject.out8
-rw-r--r--testdata/language-features/guard/guard06.out2
-rw-r--r--testdata/language-features/guard/guard07.out2
-rw-r--r--testdata/language-features/guard/guard08.out2
-rw-r--r--testdata/language-features/guard/guard09.out2
-rw-r--r--testdata/language-features/guard/guard11.out2
-rw-r--r--testdata/language-features/guard/guard12.reject.out8
-rw-r--r--testdata/language-features/guard/guard13.out2
-rw-r--r--testdata/language-features/guard/guard14.out2
-rw-r--r--testdata/language-features/guard/guard15.out2
-rw-r--r--testdata/language-features/guard/guard16.out2
-rw-r--r--testdata/language-features/module/Hello01.out4
-rw-r--r--testdata/language-features/module/Hello02.out4
-rw-r--r--testdata/language-features/module/Hello03.out4
-rw-r--r--testdata/language-features/module/ModulePackage/SubModule01.out2
-rw-r--r--testdata/language-features/module/Moduledef06.out2
-rw-r--r--testdata/language-features/module/Moduledef07.out2
-rw-r--r--testdata/language-features/module/Moduledef08.out2
-rw-r--r--testdata/language-features/module/Moduledef09.out4
-rw-r--r--testdata/language-features/module/Moduledef10.out6
-rw-r--r--testdata/language-features/module/Moduledef13.out2
-rw-r--r--testdata/language-features/module/TypeSyn01Mod.out2
-rw-r--r--testdata/language-features/module/import01.out2
-rw-r--r--testdata/language-features/module/import04.reject.out2
-rw-r--r--testdata/language-features/module/import05.out2
-rw-r--r--testdata/language-features/module/import06.out4
-rw-r--r--testdata/language-features/module/import07.out4
-rw-r--r--testdata/language-features/module/import08.out8
-rw-r--r--testdata/language-features/module/import09.out2
-rw-r--r--testdata/language-features/module/import10.reject.out2
-rw-r--r--testdata/language-features/module/import11.reject.out2
-rw-r--r--testdata/language-features/module/import12.out2
-rw-r--r--testdata/language-features/module/import13.out2
-rw-r--r--testdata/language-features/module/import14.out2
-rw-r--r--testdata/language-features/module/import15.out2
-rw-r--r--testdata/language-features/pattern/caseWhere.out2
-rw-r--r--testdata/language-features/pattern/pattern01.out8
-rw-r--r--testdata/language-features/pattern/patternGuard.out2
-rw-r--r--testdata/language-features/pattern/uncovered.out2
-rw-r--r--testdata/language-features/pattern/unreachable.out2
-rw-r--r--testdata/language-features/pattern/viewPattern.out2
-rw-r--r--testdata/language-features/recursion/mutualConst.out2
-rw-r--r--testdata/language-features/recursion/simplerec01.out2
-rw-r--r--testdata/language-features/recursion/simplerec02.out2
-rw-r--r--testdata/language-features/recursion/simplerec03.out2
-rw-r--r--testdata/language-features/section/section01.out6
-rw-r--r--testdata/let.out2
-rw-r--r--testdata/letIndent.out2
-rw-r--r--testdata/listcompr01.out2
-rw-r--r--testdata/listcompr02.out2
-rw-r--r--testdata/listcompr03.out2
-rw-r--r--testdata/listcompr04.out2
-rw-r--r--testdata/listcompr05.out2
-rw-r--r--testdata/localfun.out2
-rw-r--r--testdata/loopIssue.out2
-rw-r--r--testdata/performance/Material.out312
-rw-r--r--testdata/performance/SampleMaterial.out2
-rw-r--r--testdata/primes.out2
-rw-r--r--testdata/record01.reject.out8
-rw-r--r--testdata/record02.out2
-rw-r--r--testdata/reduce06.out2
-rw-r--r--testdata/swizzling.out2
-rw-r--r--testdata/traceTest.out10
-rw-r--r--testdata/typeclass.out12
-rw-r--r--testdata/typeclass0.out2
-rw-r--r--testdata/typesig.reject.out16
-rw-r--r--testdata/typesigctx.reject.out12
-rw-r--r--testdata/typesyn.out2
-rw-r--r--testdata/where.out2
-rw-r--r--testdata/zip01.out2
187 files changed, 1421 insertions, 1421 deletions
diff --git a/testdata/Builtins.out b/testdata/Builtins.out
index aefc3cae..55a1ceed 100644
--- a/testdata/Builtins.out
+++ b/testdata/Builtins.out
@@ -1,395 +1,395 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3id :: {a} -> a->a 3id :: {a} -> a->a
4'VecS :: Type -> 'Nat->Type 4'VecS :: Type -> 'Nat->Type
5V2 :: {a} -> a -> a -> 'VecS a 2 5V2 :: {a} -> a -> a -> 'VecS a 2
6V3 :: {a} -> a -> a -> a -> 'VecS a 3 6V3 :: {a} -> a -> a -> a -> 'VecS a 3
7V4 :: {a} -> a -> a -> a -> a -> 'VecS a 4 7V4 :: {a} -> a -> a -> a -> a -> 'VecS a 4
8'VecSCase :: {a} -> (b : (c:'Nat) -> 'VecS a c -> Type) -> ((d:a) -> (e:a) -> b 2 (V2 d e)) -> ((f:a) -> (g:a) -> (h:a) -> b 3 (V3 f g h)) -> ((i:a) -> (j:a) -> (k:a) -> (l:a) -> b 4 (V4 i j k l)) -> {m:'Nat} -> (n : 'VecS a m) -> b m n 8'VecSCase :: {a} -> (b : (c:'Nat) -> 'VecS a c -> Type) -> ((d:a) -> (e:a) -> b 2 (V2 d e)) -> ((f:a) -> (g:a) -> (h:a) -> b 3 (V3 f g h)) -> ((i:a) -> (j:a) -> (k:a) -> (l:a) -> b 4 (V4 i j k l)) -> {m:'Nat} -> (n : 'VecS a m) -> b m n
9match'VecS :: (a : Type->Type) -> ((b:Type) -> (c:'Nat) -> a ('VecS b c)) -> (d:Type) -> a d -> a d 9match'VecS :: (a : Type->Type) -> ((b:Type) -> (c:'Nat) -> a ('VecS b c)) -> (d:Type) -> a d -> a d
10mapVec :: {a} -> {b} -> {c:'Nat} -> (a->b) -> 'VecS a c -> 'VecS b c 10mapVec :: {a} -> {b} -> {c:'Nat} -> (a->b) -> 'VecS a c -> 'VecS b c
11'Vec :: 'Nat -> Type->Type 11'Vec :: 'Nat -> Type->Type
12'VecScalar :: 'Nat -> Type->Type 12'VecScalar :: 'Nat -> Type->Type
13'Mat :: 'Nat -> 'Nat -> Type->Type 13'Mat :: 'Nat -> 'Nat -> Type->Type
14M22F :: 'Vec 2 'Float -> 'Vec 2 'Float -> 'Mat 2 2 'Float 14M22F :: 'Vec 2 'Float -> 'Vec 2 'Float -> 'Mat 2 2 'Float
15M32F :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'Mat 3 2 'Float 15M32F :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'Mat 3 2 'Float
16M42F :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Mat 4 2 'Float 16M42F :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Mat 4 2 'Float
17M23F :: 'Vec 2 'Float -> 'Vec 2 'Float -> 'Vec 2 'Float -> 'Mat 2 3 'Float 17M23F :: 'Vec 2 'Float -> 'Vec 2 'Float -> 'Vec 2 'Float -> 'Mat 2 3 'Float
18M33F :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'Vec 3 'Float -> 'Mat 3 3 'Float 18M33F :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'Vec 3 'Float -> 'Mat 3 3 'Float
19M43F :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 4 'Float -> 'Mat 4 3 'Float 19M43F :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 4 'Float -> 'Mat 4 3 'Float
20M24F :: 'Vec 2 'Float -> 'Vec 2 'Float -> 'Vec 2 'Float -> 'Vec 2 'Float -> 'Mat 2 4 'Float 20M24F :: 'Vec 2 'Float -> 'Vec 2 'Float -> 'Vec 2 'Float -> 'Vec 2 'Float -> 'Mat 2 4 'Float
21M34F :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'Vec 3 'Float -> 'Vec 3 'Float -> 'Mat 3 4 'Float 21M34F :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'Vec 3 'Float -> 'Vec 3 'Float -> 'Mat 3 4 'Float
22M44F :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 4 'Float -> 'Mat 4 4 'Float 22M44F :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 4 'Float -> 'Mat 4 4 'Float
23'MatCase :: (a : (b:'Nat) -> (c:'Nat) -> (d:Type) -> 'Mat b c d -> Type) -> ((e : 'Vec 2 'Float) -> (f : 'Vec 2 'Float) -> a 2 2 'Float (M22F e f)) -> ((g : 'Vec 3 'Float) -> (h : 'Vec 3 'Float) -> a 3 2 'Float (M32F g h)) -> ((i : 'Vec 4 'Float) -> (j : 'Vec 4 'Float) -> a 4 2 'Float (M42F i j)) -> ((k : 'Vec 2 'Float) -> (l : 'Vec 2 'Float) -> (m : 'Vec 2 'Float) -> a 2 3 'Float (M23F k l m)) -> ((n : 'Vec 3 'Float) -> (o : 'Vec 3 'Float) -> (p : 'Vec 3 'Float) -> a 3 3 'Float (M33F n o p)) -> ((q : 'Vec 4 'Float) -> (r : 'Vec 4 'Float) -> (s : 'Vec 4 'Float) -> a 4 3 'Float (M43F q r s)) -> ((t : 'Vec 2 'Float) -> (u : 'Vec 2 'Float) -> (v : 'Vec 2 'Float) -> (w : 'Vec 2 'Float) -> a 2 4 'Float (M24F t u v w)) -> ((x : 'Vec 3 'Float) -> (y : 'Vec 3 'Float) -> (z : 'Vec 3 'Float) -> (a' : 'Vec 3 'Float) -> a 3 4 'Float (M34F x y z a')) -> ((b' : 'Vec 4 'Float) -> (c' : 'Vec 4 'Float) -> (d' : 'Vec 4 'Float) -> (e' : 'Vec 4 'Float) -> a 4 4 'Float (M44F b' c' d' e')) -> {f':'Nat} -> {g':'Nat} -> {h'} -> (i' : 'Mat f' g' h') -> a f' g' h' i' 23'MatCase :: (a : (b:'Nat) -> (c:'Nat) -> (d:Type) -> 'Mat b c d -> Type) -> ((e : 'Vec 2 'Float) -> (f : 'Vec 2 'Float) -> a 2 2 'Float (M22F e f)) -> ((g : 'Vec 3 'Float) -> (h : 'Vec 3 'Float) -> a 3 2 'Float (M32F g h)) -> ((i : 'Vec 4 'Float) -> (j : 'Vec 4 'Float) -> a 4 2 'Float (M42F i j)) -> ((k : 'Vec 2 'Float) -> (l : 'Vec 2 'Float) -> (m : 'Vec 2 'Float) -> a 2 3 'Float (M23F k l m)) -> ((n : 'Vec 3 'Float) -> (o : 'Vec 3 'Float) -> (p : 'Vec 3 'Float) -> a 3 3 'Float (M33F n o p)) -> ((q : 'Vec 4 'Float) -> (r : 'Vec 4 'Float) -> (s : 'Vec 4 'Float) -> a 4 3 'Float (M43F q r s)) -> ((t : 'Vec 2 'Float) -> (u : 'Vec 2 'Float) -> (v : 'Vec 2 'Float) -> (w : 'Vec 2 'Float) -> a 2 4 'Float (M24F t u v w)) -> ((x : 'Vec 3 'Float) -> (y : 'Vec 3 'Float) -> (z : 'Vec 3 'Float) -> (a' : 'Vec 3 'Float) -> a 3 4 'Float (M34F x y z a')) -> ((b' : 'Vec 4 'Float) -> (c' : 'Vec 4 'Float) -> (d' : 'Vec 4 'Float) -> (e' : 'Vec 4 'Float) -> a 4 4 'Float (M44F b' c' d' e')) -> {f':'Nat} -> {g':'Nat} -> {h'} -> (i' : 'Mat f' g' h') -> a f' g' h' i'
24match'Mat :: (a : Type->Type) -> ((b:'Nat) -> (c:'Nat) -> (d:Type) -> a ('Mat b c d)) -> (e:Type) -> a e -> a e 24match'Mat :: (a : Type->Type) -> ((b:'Nat) -> (c:'Nat) -> (d:Type) -> a ('Mat b c d)) -> (e:Type) -> a e -> a e
25'MatVecScalarElem :: Type->Type 25'MatVecScalarElem :: Type->Type
26'Signed :: Type->Type 26'Signed :: Type->Type
27'Component :: Type->Type 27'Component :: Type->Type
28zero :: {a} -> {_ : 'Component a}->a 28zero :: {a} -> {_ : 'Component a}->a
29one :: {a} -> {_ : 'Component a}->a 29one :: {a} -> {_ : 'Component a}->a
30'Integral :: Type->Type 30'Integral :: Type->Type
31'Floating :: Type->Type 31'Floating :: Type->Type
32PrimAdd :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> a->a 32PrimAdd :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> a->a
33PrimSub :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> a->a 33PrimSub :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> a->a
34PrimMul :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> a->a 34PrimMul :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> a->a
35PrimAddS :: {a} -> {b} -> {_ : a ~ 'MatVecScalarElem b} -> {_ : 'Num a} -> b -> a->b 35PrimAddS :: {a} -> {b} -> {_ : a ~ 'MatVecScalarElem b} -> {_ : 'Num a} -> b -> a->b
36PrimSubS :: {a} -> {b} -> {_ : a ~ 'MatVecScalarElem b} -> {_ : 'Num a} -> b -> a->b 36PrimSubS :: {a} -> {b} -> {_ : a ~ 'MatVecScalarElem b} -> {_ : 'Num a} -> b -> a->b
37PrimMulS :: {a} -> {b} -> {_ : a ~ 'MatVecScalarElem b} -> {_ : 'Num a} -> b -> a->b 37PrimMulS :: {a} -> {b} -> {_ : a ~ 'MatVecScalarElem b} -> {_ : 'Num a} -> b -> a->b
38PrimDiv :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 38PrimDiv :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
39PrimMod :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 39PrimMod :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
40PrimDivS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b 40PrimDivS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b
41PrimModS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b 41PrimModS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b
42PrimNeg :: {a} -> {_ : 'Signed ('MatVecScalarElem a)} -> a->a 42PrimNeg :: {a} -> {_ : 'Signed ('MatVecScalarElem a)} -> a->a
43PrimBAnd :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 43PrimBAnd :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
44PrimBOr :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 44PrimBOr :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
45PrimBXor :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 45PrimBXor :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
46PrimBAndS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b 46PrimBAndS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b
47PrimBOrS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b 47PrimBOrS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b
48PrimBXorS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b 48PrimBXorS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b
49PrimBNot :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b->b 49PrimBNot :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b->b
50PrimBShiftL :: {a} -> {b} -> {c:'Nat} -> {d} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> {_ : d ~ 'VecScalar c 'Word} -> b -> d->b 50PrimBShiftL :: {a} -> {b} -> {c:'Nat} -> {d} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> {_ : d ~ 'VecScalar c 'Word} -> b -> d->b
51PrimBShiftR :: {a} -> {b} -> {c:'Nat} -> {d} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> {_ : d ~ 'VecScalar c 'Word} -> b -> d->b 51PrimBShiftR :: {a} -> {b} -> {c:'Nat} -> {d} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> {_ : d ~ 'VecScalar c 'Word} -> b -> d->b
52PrimBShiftLS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> 'Word->b 52PrimBShiftLS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> 'Word->b
53PrimBShiftRS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> 'Word->b 53PrimBShiftRS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> 'Word->b
54PrimAnd :: 'Bool -> 'Bool->'Bool 54PrimAnd :: 'Bool -> 'Bool->'Bool
55PrimOr :: 'Bool -> 'Bool->'Bool 55PrimOr :: 'Bool -> 'Bool->'Bool
56PrimXor :: 'Bool -> 'Bool->'Bool 56PrimXor :: 'Bool -> 'Bool->'Bool
57PrimNot :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Bool} -> a->a 57PrimNot :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Bool} -> a->a
58PrimAny :: {a:'Nat} -> 'VecScalar a 'Bool -> 'Bool 58PrimAny :: {a:'Nat} -> 'VecScalar a 'Bool -> 'Bool
59PrimAll :: {a:'Nat} -> 'VecScalar a 'Bool -> 'Bool 59PrimAll :: {a:'Nat} -> 'VecScalar a 'Bool -> 'Bool
60PrimACos :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 60PrimACos :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
61PrimACosH :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 61PrimACosH :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
62PrimASin :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 62PrimASin :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
63PrimASinH :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 63PrimASinH :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
64PrimATan :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 64PrimATan :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
65PrimATanH :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 65PrimATanH :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
66PrimCos :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 66PrimCos :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
67PrimCosH :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 67PrimCosH :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
68PrimDegrees :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 68PrimDegrees :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
69PrimRadians :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 69PrimRadians :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
70PrimSin :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 70PrimSin :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
71PrimSinH :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 71PrimSinH :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
72PrimTan :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 72PrimTan :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
73PrimTanH :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 73PrimTanH :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
74PrimExp :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 74PrimExp :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
75PrimLog :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 75PrimLog :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
76PrimExp2 :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 76PrimExp2 :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
77PrimLog2 :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 77PrimLog2 :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
78PrimSqrt :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 78PrimSqrt :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
79PrimInvSqrt :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 79PrimInvSqrt :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
80PrimPow :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->a 80PrimPow :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->a
81PrimATan2 :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->a 81PrimATan2 :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->a
82PrimFloor :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 82PrimFloor :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
83PrimTrunc :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 83PrimTrunc :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
84PrimRound :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 84PrimRound :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
85PrimRoundEven :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 85PrimRoundEven :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
86PrimCeil :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 86PrimCeil :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
87PrimFract :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 87PrimFract :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
88PrimMin :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 88PrimMin :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
89PrimMax :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 89PrimMax :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
90PrimMinS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b 90PrimMinS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b
91PrimMaxS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b 91PrimMaxS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b
92PrimIsNan :: {a} -> {b:'Nat} -> {c} -> {_ : a ~ 'VecScalar b 'Float} -> {_ : c ~ 'VecScalar b 'Bool} -> a->c 92PrimIsNan :: {a} -> {b:'Nat} -> {c} -> {_ : a ~ 'VecScalar b 'Float} -> {_ : c ~ 'VecScalar b 'Bool} -> a->c
93PrimIsInf :: {a} -> {b:'Nat} -> {c} -> {_ : a ~ 'VecScalar b 'Float} -> {_ : c ~ 'VecScalar b 'Bool} -> a->c 93PrimIsInf :: {a} -> {b:'Nat} -> {c} -> {_ : a ~ 'VecScalar b 'Float} -> {_ : c ~ 'VecScalar b 'Bool} -> a->c
94PrimAbs :: {a} -> {b} -> {c:'Nat} -> {_ : 'Signed a} -> {_ : b ~ 'VecScalar c a} -> b->b 94PrimAbs :: {a} -> {b} -> {c:'Nat} -> {_ : 'Signed a} -> {_ : b ~ 'VecScalar c a} -> b->b
95PrimSign :: {a} -> {b} -> {c:'Nat} -> {_ : 'Signed a} -> {_ : b ~ 'VecScalar c a} -> b->b 95PrimSign :: {a} -> {b} -> {c:'Nat} -> {_ : 'Signed a} -> {_ : b ~ 'VecScalar c a} -> b->b
96PrimModF :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->(a, a) 96PrimModF :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->(a, a)
97PrimClamp :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b -> b->b 97PrimClamp :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b -> b->b
98PrimClampS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> a -> a->b 98PrimClampS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> a -> a->b
99PrimMix :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> a->a 99PrimMix :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> a->a
100PrimMixS :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> 'Float->a 100PrimMixS :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> 'Float->a
101PrimMixB :: {a} -> {b:'Nat} -> {c} -> {_ : a ~ 'VecScalar b 'Float} -> {_ : c ~ 'VecScalar b 'Bool} -> a -> a -> c->a 101PrimMixB :: {a} -> {b:'Nat} -> {c} -> {_ : a ~ 'VecScalar b 'Float} -> {_ : c ~ 'VecScalar b 'Bool} -> a -> a -> c->a
102PrimStep :: {a} -> {b:'Nat} -> {_ : a ~ 'VecS 'Float b} -> a -> a->a 102PrimStep :: {a} -> {b:'Nat} -> {_ : a ~ 'VecS 'Float b} -> a -> a->a
103PrimStepS :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> 'Float -> a->a 103PrimStepS :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> 'Float -> a->a
104PrimSmoothStep :: {a} -> {b:'Nat} -> {_ : a ~ 'VecS 'Float b} -> a -> a -> a->a 104PrimSmoothStep :: {a} -> {b:'Nat} -> {_ : a ~ 'VecS 'Float b} -> a -> a -> a->a
105PrimSmoothStepS :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> 'Float -> 'Float -> a->a 105PrimSmoothStepS :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> 'Float -> 'Float -> a->a
106PrimFloatBitsToInt :: {a:'Nat} -> 'VecScalar a 'Float -> 'VecScalar a 'Int 106PrimFloatBitsToInt :: {a:'Nat} -> 'VecScalar a 'Float -> 'VecScalar a 'Int
107PrimFloatBitsToUInt :: {a:'Nat} -> 'VecScalar a 'Float -> 'VecScalar a 'Word 107PrimFloatBitsToUInt :: {a:'Nat} -> 'VecScalar a 'Float -> 'VecScalar a 'Word
108PrimIntBitsToFloat :: {a:'Nat} -> 'VecScalar a 'Int -> 'VecScalar a 'Float 108PrimIntBitsToFloat :: {a:'Nat} -> 'VecScalar a 'Int -> 'VecScalar a 'Float
109PrimUIntBitsToFloat :: {a:'Nat} -> 'VecScalar a 'Word -> 'VecScalar a 'Float 109PrimUIntBitsToFloat :: {a:'Nat} -> 'VecScalar a 'Word -> 'VecScalar a 'Float
110PrimLength :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->'Float 110PrimLength :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->'Float
111PrimDistance :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->'Float 111PrimDistance :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->'Float
112PrimDot :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->'Float 112PrimDot :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->'Float
113PrimCross :: {a} -> {_ : a ~ 'VecS 'Float 3} -> a -> a->a 113PrimCross :: {a} -> {_ : a ~ 'VecS 'Float 3} -> a -> a->a
114PrimNormalize :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 114PrimNormalize :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
115PrimFaceForward :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> a->a 115PrimFaceForward :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> a->a
116PrimRefract :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> a->a 116PrimRefract :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> a->a
117PrimReflect :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->a 117PrimReflect :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->a
118PrimTranspose :: {a:'Nat} -> {b:'Nat} -> {c} -> 'Mat a b c -> 'Mat b a c 118PrimTranspose :: {a:'Nat} -> {b:'Nat} -> {c} -> 'Mat a b c -> 'Mat b a c
119PrimDeterminant :: {a:'Nat} -> {b} -> 'Mat a a b -> 'Float 119PrimDeterminant :: {a:'Nat} -> {b} -> 'Mat a a b -> 'Float
120PrimInverse :: {a:'Nat} -> {b} -> 'Mat a a b -> 'Mat a a b 120PrimInverse :: {a:'Nat} -> {b} -> 'Mat a a b -> 'Mat a a b
121PrimOuterProduct :: {a:'Nat} -> {b} -> {c:'Nat} -> 'Vec a b -> 'Vec c b -> 'Mat c a b 121PrimOuterProduct :: {a:'Nat} -> {b} -> {c:'Nat} -> 'Vec a b -> 'Vec c b -> 'Mat c a b
122PrimMulMatVec :: {a:'Nat} -> {b:'Nat} -> {c} -> 'Mat a b c -> 'Vec b c -> 'Vec a c 122PrimMulMatVec :: {a:'Nat} -> {b:'Nat} -> {c} -> 'Mat a b c -> 'Vec b c -> 'Vec a c
123PrimMulVecMat :: {a:'Nat} -> {b} -> {c:'Nat} -> 'Vec a b -> 'Mat a c b -> 'Vec c b 123PrimMulVecMat :: {a:'Nat} -> {b} -> {c:'Nat} -> 'Vec a b -> 'Mat a c b -> 'Vec c b
124PrimMulMatMat :: {a:'Nat} -> {b:'Nat} -> {c} -> {d:'Nat} -> 'Mat a b c -> 'Mat b d c -> 'Mat a d c 124PrimMulMatMat :: {a:'Nat} -> {b:'Nat} -> {c} -> {d:'Nat} -> 'Mat a b c -> 'Mat b d c -> 'Mat a d c
125PrimLessThan :: {a} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : a ~ 'VecScalar b c} -> {_ : d ~ 'VecScalar b 'Bool} -> a -> a->d 125PrimLessThan :: {a} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : a ~ 'VecScalar b c} -> {_ : d ~ 'VecScalar b 'Bool} -> a -> a->d
126PrimLessThanEqual :: {a} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : a ~ 'VecScalar b c} -> {_ : d ~ 'VecScalar b 'Bool} -> a -> a->d 126PrimLessThanEqual :: {a} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : a ~ 'VecScalar b c} -> {_ : d ~ 'VecScalar b 'Bool} -> a -> a->d
127PrimGreaterThan :: {a} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : a ~ 'VecScalar b c} -> {_ : d ~ 'VecScalar b 'Bool} -> a -> a->d 127PrimGreaterThan :: {a} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : a ~ 'VecScalar b c} -> {_ : d ~ 'VecScalar b 'Bool} -> a -> a->d
128PrimGreaterThanEqual :: {a} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : a ~ 'VecScalar b c} -> {_ : d ~ 'VecScalar b 'Bool} -> a -> a->d 128PrimGreaterThanEqual :: {a} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : a ~ 'VecScalar b c} -> {_ : d ~ 'VecScalar b 'Bool} -> a -> a->d
129PrimEqualV :: {a} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : a ~ 'VecScalar b c} -> {_ : d ~ 'VecScalar b 'Bool} -> a -> a->d 129PrimEqualV :: {a} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : a ~ 'VecScalar b c} -> {_ : d ~ 'VecScalar b 'Bool} -> a -> a->d
130PrimNotEqualV :: {a} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : a ~ 'VecScalar b c} -> {_ : d ~ 'VecScalar b 'Bool} -> a -> a->d 130PrimNotEqualV :: {a} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : a ~ 'VecScalar b c} -> {_ : d ~ 'VecScalar b 'Bool} -> a -> a->d
131PrimEqual :: {a} -> {b} -> {_ : b ~ 'MatVecScalarElem a} -> a -> a->'Bool 131PrimEqual :: {a} -> {b} -> {_ : b ~ 'MatVecScalarElem a} -> a -> a->'Bool
132PrimNotEqual :: {a} -> {b} -> {_ : b ~ 'MatVecScalarElem a} -> a -> a->'Bool 132PrimNotEqual :: {a} -> {b} -> {_ : b ~ 'MatVecScalarElem a} -> a -> a->'Bool
133PrimDFdx :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 133PrimDFdx :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
134PrimDFdy :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 134PrimDFdy :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
135PrimFWidth :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 135PrimFWidth :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
136PrimNoise1 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Float 136PrimNoise1 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Float
137PrimNoise2 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Vec 2 'Float 137PrimNoise2 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Vec 2 'Float
138PrimNoise3 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Vec 3 'Float 138PrimNoise3 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Vec 3 'Float
139PrimNoise4 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Vec 4 'Float 139PrimNoise4 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Vec 4 'Float
140head :: {a} -> 'List a -> a 140head :: {a} -> 'List a -> a
141++ :: {a} -> 'List a -> 'List a -> 'List a 141++ :: {a} -> 'List a -> 'List a -> 'List a
142foldr :: {a} -> {b} -> (b -> a->a) -> a -> 'List b -> a 142foldr :: {a} -> {b} -> (b -> a->a) -> a -> 'List b -> a
143concat :: {a} -> 'List ('List a) -> 'List a 143concat :: {a} -> 'List ('List a) -> 'List a
144map :: {a} -> {b} -> (a->b) -> 'List a -> 'List b 144map :: {a} -> {b} -> (a->b) -> 'List a -> 'List b
145concatMap :: {a} -> {b} -> (a -> 'List b) -> 'List a -> 'List b 145concatMap :: {a} -> {b} -> (a -> 'List b) -> 'List a -> 'List b
146len :: {a} -> 'List a -> 'Int 146len :: {a} -> 'List a -> 'Int
147'Maybe :: Type->Type 147'Maybe :: Type->Type
148Nothing :: {a} -> 'Maybe a 148Nothing :: {a} -> 'Maybe a
149Just :: {a} -> a -> 'Maybe a 149Just :: {a} -> a -> 'Maybe a
150'MaybeCase :: {a} -> (b : 'Maybe a -> Type) -> b Nothing -> ((c:a) -> b (Just c)) -> (d : 'Maybe a) -> b d 150'MaybeCase :: {a} -> (b : 'Maybe a -> Type) -> b Nothing -> ((c:a) -> b (Just c)) -> (d : 'Maybe a) -> b d
151match'Maybe :: (a : Type->Type) -> ((b:Type) -> a ('Maybe b)) -> (c:Type) -> a c -> a c 151match'Maybe :: (a : Type->Type) -> ((b:Type) -> a ('Maybe b)) -> (c:Type) -> a c -> a c
152'Vector :: 'Nat -> Type->Type 152'Vector :: 'Nat -> Type->Type
153'VectorCase :: {a:'Nat} -> {b} -> (c : 'Vector a b -> Type) -> (d : 'Vector a b) -> c d 153'VectorCase :: {a:'Nat} -> {b} -> (c : 'Vector a b -> Type) -> (d : 'Vector a b) -> c d
154match'Vector :: (a : Type->Type) -> ((b:'Nat) -> (c:Type) -> a ('Vector b c)) -> (d:Type) -> a d -> a d 154match'Vector :: (a : Type->Type) -> ((b:'Nat) -> (c:Type) -> a ('Vector b c)) -> (d:Type) -> a d -> a d
155'PrimitiveType :: Type 155'PrimitiveType :: Type
156Triangle :: 'PrimitiveType 156Triangle :: 'PrimitiveType
157Line :: 'PrimitiveType 157Line :: 'PrimitiveType
158Point :: 'PrimitiveType 158Point :: 'PrimitiveType
159TriangleAdjacency :: 'PrimitiveType 159TriangleAdjacency :: 'PrimitiveType
160LineAdjacency :: 'PrimitiveType 160LineAdjacency :: 'PrimitiveType
161'PrimitiveTypeCase :: (a : 'PrimitiveType->Type) -> a Triangle -> a Line -> a Point -> a TriangleAdjacency -> a LineAdjacency -> (b:'PrimitiveType) -> a b 161'PrimitiveTypeCase :: (a : 'PrimitiveType->Type) -> a Triangle -> a Line -> a Point -> a TriangleAdjacency -> a LineAdjacency -> (b:'PrimitiveType) -> a b
162match'PrimitiveType :: (a : Type->Type) -> a 'PrimitiveType -> (b:Type) -> a b -> a b 162match'PrimitiveType :: (a : Type->Type) -> a 'PrimitiveType -> (b:Type) -> a b -> a b
163'Primitive :: Type -> 'PrimitiveType->Type 163'Primitive :: Type -> 'PrimitiveType->Type
164PrimPoint :: {a} -> a -> 'Primitive a Point 164PrimPoint :: {a} -> a -> 'Primitive a Point
165PrimLine :: {a} -> a -> a -> 'Primitive a Line 165PrimLine :: {a} -> a -> a -> 'Primitive a Line
166PrimTriangle :: {a} -> a -> a -> a -> 'Primitive a Triangle 166PrimTriangle :: {a} -> a -> a -> a -> 'Primitive a Triangle
167'PrimitiveCase :: {a} -> (b : (c:'PrimitiveType) -> 'Primitive a c -> Type) -> ((d:a) -> b Point (PrimPoint d)) -> ((e:a) -> (f:a) -> b Line (PrimLine e f)) -> ((g:a) -> (h:a) -> (i:a) -> b Triangle (PrimTriangle g h i)) -> {j:'PrimitiveType} -> (k : 'Primitive a j) -> b j k 167'PrimitiveCase :: {a} -> (b : (c:'PrimitiveType) -> 'Primitive a c -> Type) -> ((d:a) -> b Point (PrimPoint d)) -> ((e:a) -> (f:a) -> b Line (PrimLine e f)) -> ((g:a) -> (h:a) -> (i:a) -> b Triangle (PrimTriangle g h i)) -> {j:'PrimitiveType} -> (k : 'Primitive a j) -> b j k
168match'Primitive :: (a : Type->Type) -> ((b:Type) -> (c:'PrimitiveType) -> a ('Primitive b c)) -> (d:Type) -> a d -> a d 168match'Primitive :: (a : Type->Type) -> ((b:Type) -> (c:'PrimitiveType) -> a ('Primitive b c)) -> (d:Type) -> a d -> a d
169mapPrimitive :: {a} -> {b} -> {c:'PrimitiveType} -> (a->b) -> 'Primitive a c -> 'Primitive b c 169mapPrimitive :: {a} -> {b} -> {c:'PrimitiveType} -> (a->b) -> 'Primitive a c -> 'Primitive b c
170'PrimitiveStream :: 'PrimitiveType -> Type->Type 170'PrimitiveStream :: 'PrimitiveType -> Type->Type
171mapPrimitives :: {a} -> {b} -> {c:'PrimitiveType} -> (a->b) -> 'List ('Primitive a c) -> 'List ('Primitive b c) 171mapPrimitives :: {a} -> {b} -> {c:'PrimitiveType} -> (a->b) -> 'List ('Primitive a c) -> 'List ('Primitive b c)
172'ListElem :: Type->Type 172'ListElem :: Type->Type
173fetchArrays :: {a:'PrimitiveType} -> {b : 'List Type} -> {c : 'List Type} -> {_ : b ~ map Type Type 'ListElem c} -> 'HList c -> 'PrimitiveStream a ('HList b) 173fetchArrays :: {a:'PrimitiveType} -> {b : 'List Type} -> {c : 'List Type} -> {_ : b ~ map Type Type 'ListElem c} -> 'HList c -> 'PrimitiveStream a ('HList b)
174fetch :: {a:'PrimitiveType} -> {b : 'List Type} -> 'String -> 'HList b -> 'PrimitiveStream a ('HList b) 174fetch :: {a:'PrimitiveType} -> {b : 'List Type} -> 'String -> 'HList b -> 'PrimitiveStream a ('HList b)
175Attribute :: {a} -> 'String->a 175Attribute :: {a} -> 'String->a
176fetchStream :: {a:'PrimitiveType} -> {b : 'List Type} -> 'String -> (c : 'List 'String) -> {_ : len 'String c ~ len Type b} -> 'PrimitiveStream a ('HList b) 176fetchStream :: {a:'PrimitiveType} -> {b : 'List Type} -> 'String -> (c : 'List 'String) -> {_ : len 'String c ~ len Type b} -> 'PrimitiveStream a ('HList b)
177'SimpleFragment :: Type->Type 177'SimpleFragment :: Type->Type
178SimpleFragment :: {a} -> 'Vec 3 'Float -> a -> 'SimpleFragment a 178SimpleFragment :: {a} -> 'Vec 3 'Float -> a -> 'SimpleFragment a
179'SimpleFragmentCase :: {a} -> (b : 'SimpleFragment a -> Type) -> ((c : 'Vec 3 'Float) -> (d:a) -> b (SimpleFragment c d)) -> (e : 'SimpleFragment a) -> b e 179'SimpleFragmentCase :: {a} -> (b : 'SimpleFragment a -> Type) -> ((c : 'Vec 3 'Float) -> (d:a) -> b (SimpleFragment c d)) -> (e : 'SimpleFragment a) -> b e
180match'SimpleFragment :: (a : Type->Type) -> ((b:Type) -> a ('SimpleFragment b)) -> (c:Type) -> a c -> a c 180match'SimpleFragment :: (a : Type->Type) -> ((b:Type) -> a ('SimpleFragment b)) -> (c:Type) -> a c -> a c
181'Fragment :: 'Nat -> Type->Type 181'Fragment :: 'Nat -> Type->Type
182sFragmentCoords :: {a} -> 'SimpleFragment a -> 'VecS 'Float 3 182sFragmentCoords :: {a} -> 'SimpleFragment a -> 'VecS 'Float 3
183sFragmentValue :: {a} -> 'SimpleFragment a -> a 183sFragmentValue :: {a} -> 'SimpleFragment a -> a
184'FragmentStream :: 'Nat -> Type->Type 184'FragmentStream :: 'Nat -> Type->Type
185customizeDepth :: {a} -> {b:'Nat} -> (a->'Float) -> 'Fragment b a -> 'Fragment b a 185customizeDepth :: {a} -> {b:'Nat} -> (a->'Float) -> 'Fragment b a -> 'Fragment b a
186customizeDepths :: {a} -> {b:'Nat} -> (a->'Float) -> 'List ('Vector b ('Maybe ('SimpleFragment a))) -> 'List ('Vector b ('Maybe ('SimpleFragment a))) 186customizeDepths :: {a} -> {b:'Nat} -> (a->'Float) -> 'List ('Vector b ('Maybe ('SimpleFragment a))) -> 'List ('Vector b ('Maybe ('SimpleFragment a)))
187filterFragment :: {a} -> {b:'Nat} -> (a->'Bool) -> 'Fragment b a -> 'Fragment b a 187filterFragment :: {a} -> {b:'Nat} -> (a->'Bool) -> 'Fragment b a -> 'Fragment b a
188filterFragments :: {a} -> {b:'Nat} -> (a->'Bool) -> 'List ('Vector b ('Maybe ('SimpleFragment a))) -> 'List ('Vector b ('Maybe ('SimpleFragment a))) 188filterFragments :: {a} -> {b:'Nat} -> (a->'Bool) -> 'List ('Vector b ('Maybe ('SimpleFragment a))) -> 'List ('Vector b ('Maybe ('SimpleFragment a)))
189mapFragment :: {a} -> {b} -> {c:'Nat} -> (a->b) -> 'Fragment c a -> 'Fragment c b 189mapFragment :: {a} -> {b} -> {c:'Nat} -> (a->b) -> 'Fragment c a -> 'Fragment c b
190mapFragments :: {a} -> {b} -> {c:'Nat} -> (a->b) -> 'List ('Vector c ('Maybe ('SimpleFragment a))) -> 'List ('Vector c ('Maybe ('SimpleFragment b))) 190mapFragments :: {a} -> {b} -> {c:'Nat} -> (a->b) -> 'List ('Vector c ('Maybe ('SimpleFragment a))) -> 'List ('Vector c ('Maybe ('SimpleFragment b)))
191'ImageKind :: Type 191'ImageKind :: Type
192Color :: Type->'ImageKind 192Color :: Type->'ImageKind
193Depth :: 'ImageKind 193Depth :: 'ImageKind
194Stencil :: 'ImageKind 194Stencil :: 'ImageKind
195'ImageKindCase :: (a : 'ImageKind->Type) -> ((b:Type) -> a (Color b)) -> a Depth -> a Stencil -> (c:'ImageKind) -> a c 195'ImageKindCase :: (a : 'ImageKind->Type) -> ((b:Type) -> a (Color b)) -> a Depth -> a Stencil -> (c:'ImageKind) -> a c
196match'ImageKind :: (a : Type->Type) -> a 'ImageKind -> (b:Type) -> a b -> a b 196match'ImageKind :: (a : Type->Type) -> a 'ImageKind -> (b:Type) -> a b -> a b
197imageType :: 'ImageKind->Type 197imageType :: 'ImageKind->Type
198'Image :: 'Nat -> 'ImageKind->Type 198'Image :: 'Nat -> 'ImageKind->Type
199'ImageCase :: {a:'Nat} -> {b:'ImageKind} -> (c : 'Image a b -> Type) -> (d : 'Image a b) -> c d 199'ImageCase :: {a:'Nat} -> {b:'ImageKind} -> (c : 'Image a b -> Type) -> (d : 'Image a b) -> c d
200match'Image :: (a : Type->Type) -> ((b:'Nat) -> (c:'ImageKind) -> a ('Image b c)) -> (d:Type) -> a d -> a d 200match'Image :: (a : Type->Type) -> ((b:'Nat) -> (c:'ImageKind) -> a ('Image b c)) -> (d:Type) -> a d -> a d
201ColorImage :: {a:'Nat} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : d ~ 'VecScalar b c} -> d -> 'Image a (Color d) 201ColorImage :: {a:'Nat} -> {b:'Nat} -> {c} -> {d} -> {_ : 'Num c} -> {_ : d ~ 'VecScalar b c} -> d -> 'Image a (Color d)
202DepthImage :: {a:'Nat} -> 'Float -> 'Image a Depth 202DepthImage :: {a:'Nat} -> 'Float -> 'Image a Depth
203StencilImage :: {a:'Nat} -> 'Int -> 'Image a Stencil 203StencilImage :: {a:'Nat} -> 'Int -> 'Image a Stencil
204emptyDepthImage :: 'Float -> 'Image 1 Depth 204emptyDepthImage :: 'Float -> 'Image 1 Depth
205emptyColorImage :: {a:'Nat} -> {b} -> {c} -> {_ : 'Num b} -> {_ : c ~ 'VecScalar a b} -> c -> 'Image 1 (Color c) 205emptyColorImage :: {a:'Nat} -> {b} -> {c} -> {_ : 'Num b} -> {_ : c ~ 'VecScalar a b} -> c -> 'Image 1 (Color c)
206'Swizz :: Type 206'Swizz :: Type
207Sx :: 'Swizz 207Sx :: 'Swizz
208Sy :: 'Swizz 208Sy :: 'Swizz
209Sz :: 'Swizz 209Sz :: 'Swizz
210Sw :: 'Swizz 210Sw :: 'Swizz
211'SwizzCase :: (a : 'Swizz->Type) -> a Sx -> a Sy -> a Sz -> a Sw -> (b:'Swizz) -> a b 211'SwizzCase :: (a : 'Swizz->Type) -> a Sx -> a Sy -> a Sz -> a Sw -> (b:'Swizz) -> a b
212match'Swizz :: (a : Type->Type) -> a 'Swizz -> (b:Type) -> a b -> a b 212match'Swizz :: (a : Type->Type) -> a 'Swizz -> (b:Type) -> a b -> a b
213swizzscalar :: {a} -> {b:'Nat} -> 'Vec b a -> 'Swizz->a 213swizzscalar :: {a} -> {b:'Nat} -> 'Vec b a -> 'Swizz->a
214definedVec :: {a} -> {b:'Nat} -> 'Vec b a -> 'Bool 214definedVec :: {a} -> {b:'Nat} -> 'Vec b a -> 'Bool
215swizzvector :: {a} -> {b:'Nat} -> {c:'Nat} -> 'Vec b a -> 'Vec c 'Swizz -> 'VecS a c 215swizzvector :: {a} -> {b:'Nat} -> {c:'Nat} -> 'Vec b a -> 'Vec c 'Swizz -> 'VecS a c
216'BlendingFactor :: Type 216'BlendingFactor :: Type
217ZeroBF :: 'BlendingFactor 217ZeroBF :: 'BlendingFactor
218OneBF :: 'BlendingFactor 218OneBF :: 'BlendingFactor
219SrcColor :: 'BlendingFactor 219SrcColor :: 'BlendingFactor
220OneMinusSrcColor :: 'BlendingFactor 220OneMinusSrcColor :: 'BlendingFactor
221DstColor :: 'BlendingFactor 221DstColor :: 'BlendingFactor
222OneMinusDstColor :: 'BlendingFactor 222OneMinusDstColor :: 'BlendingFactor
223SrcAlpha :: 'BlendingFactor 223SrcAlpha :: 'BlendingFactor
224OneMinusSrcAlpha :: 'BlendingFactor 224OneMinusSrcAlpha :: 'BlendingFactor
225DstAlpha :: 'BlendingFactor 225DstAlpha :: 'BlendingFactor
226OneMinusDstAlpha :: 'BlendingFactor 226OneMinusDstAlpha :: 'BlendingFactor
227ConstantColor :: 'BlendingFactor 227ConstantColor :: 'BlendingFactor
228OneMinusConstantColor :: 'BlendingFactor 228OneMinusConstantColor :: 'BlendingFactor
229ConstantAlpha :: 'BlendingFactor 229ConstantAlpha :: 'BlendingFactor
230OneMinusConstantAlpha :: 'BlendingFactor 230OneMinusConstantAlpha :: 'BlendingFactor
231SrcAlphaSaturate :: 'BlendingFactor 231SrcAlphaSaturate :: 'BlendingFactor
232'BlendingFactorCase :: (a : 'BlendingFactor->Type) -> a ZeroBF -> a OneBF -> a SrcColor -> a OneMinusSrcColor -> a DstColor -> a OneMinusDstColor -> a SrcAlpha -> a OneMinusSrcAlpha -> a DstAlpha -> a OneMinusDstAlpha -> a ConstantColor -> a OneMinusConstantColor -> a ConstantAlpha -> a OneMinusConstantAlpha -> a SrcAlphaSaturate -> (b:'BlendingFactor) -> a b 232'BlendingFactorCase :: (a : 'BlendingFactor->Type) -> a ZeroBF -> a OneBF -> a SrcColor -> a OneMinusSrcColor -> a DstColor -> a OneMinusDstColor -> a SrcAlpha -> a OneMinusSrcAlpha -> a DstAlpha -> a OneMinusDstAlpha -> a ConstantColor -> a OneMinusConstantColor -> a ConstantAlpha -> a OneMinusConstantAlpha -> a SrcAlphaSaturate -> (b:'BlendingFactor) -> a b
233match'BlendingFactor :: (a : Type->Type) -> a 'BlendingFactor -> (b:Type) -> a b -> a b 233match'BlendingFactor :: (a : Type->Type) -> a 'BlendingFactor -> (b:Type) -> a b -> a b
234'BlendEquation :: Type 234'BlendEquation :: Type
235FuncAdd :: 'BlendEquation 235FuncAdd :: 'BlendEquation
236FuncSubtract :: 'BlendEquation 236FuncSubtract :: 'BlendEquation
237FuncReverseSubtract :: 'BlendEquation 237FuncReverseSubtract :: 'BlendEquation
238Min :: 'BlendEquation 238Min :: 'BlendEquation
239Max :: 'BlendEquation 239Max :: 'BlendEquation
240'BlendEquationCase :: (a : 'BlendEquation->Type) -> a FuncAdd -> a FuncSubtract -> a FuncReverseSubtract -> a Min -> a Max -> (b:'BlendEquation) -> a b 240'BlendEquationCase :: (a : 'BlendEquation->Type) -> a FuncAdd -> a FuncSubtract -> a FuncReverseSubtract -> a Min -> a Max -> (b:'BlendEquation) -> a b
241match'BlendEquation :: (a : Type->Type) -> a 'BlendEquation -> (b:Type) -> a b -> a b 241match'BlendEquation :: (a : Type->Type) -> a 'BlendEquation -> (b:Type) -> a b -> a b
242'LogicOperation :: Type 242'LogicOperation :: Type
243Clear :: 'LogicOperation 243Clear :: 'LogicOperation
244And :: 'LogicOperation 244And :: 'LogicOperation
245AndReverse :: 'LogicOperation 245AndReverse :: 'LogicOperation
246Copy :: 'LogicOperation 246Copy :: 'LogicOperation
247AndInverted :: 'LogicOperation 247AndInverted :: 'LogicOperation
248Noop :: 'LogicOperation 248Noop :: 'LogicOperation
249Xor :: 'LogicOperation 249Xor :: 'LogicOperation
250Or :: 'LogicOperation 250Or :: 'LogicOperation
251Nor :: 'LogicOperation 251Nor :: 'LogicOperation
252Equiv :: 'LogicOperation 252Equiv :: 'LogicOperation
253Invert :: 'LogicOperation 253Invert :: 'LogicOperation
254OrReverse :: 'LogicOperation 254OrReverse :: 'LogicOperation
255CopyInverted :: 'LogicOperation 255CopyInverted :: 'LogicOperation
256OrInverted :: 'LogicOperation 256OrInverted :: 'LogicOperation
257Nand :: 'LogicOperation 257Nand :: 'LogicOperation
258Set :: 'LogicOperation 258Set :: 'LogicOperation
259'LogicOperationCase :: (a : 'LogicOperation->Type) -> a Clear -> a And -> a AndReverse -> a Copy -> a AndInverted -> a Noop -> a Xor -> a Or -> a Nor -> a Equiv -> a Invert -> a OrReverse -> a CopyInverted -> a OrInverted -> a Nand -> a Set -> (b:'LogicOperation) -> a b 259'LogicOperationCase :: (a : 'LogicOperation->Type) -> a Clear -> a And -> a AndReverse -> a Copy -> a AndInverted -> a Noop -> a Xor -> a Or -> a Nor -> a Equiv -> a Invert -> a OrReverse -> a CopyInverted -> a OrInverted -> a Nand -> a Set -> (b:'LogicOperation) -> a b
260match'LogicOperation :: (a : Type->Type) -> a 'LogicOperation -> (b:Type) -> a b -> a b 260match'LogicOperation :: (a : Type->Type) -> a 'LogicOperation -> (b:Type) -> a b -> a b
261'StencilOperation :: Type 261'StencilOperation :: Type
262OpZero :: 'StencilOperation 262OpZero :: 'StencilOperation
263OpKeep :: 'StencilOperation 263OpKeep :: 'StencilOperation
264OpReplace :: 'StencilOperation 264OpReplace :: 'StencilOperation
265OpIncr :: 'StencilOperation 265OpIncr :: 'StencilOperation
266OpIncrWrap :: 'StencilOperation 266OpIncrWrap :: 'StencilOperation
267OpDecr :: 'StencilOperation 267OpDecr :: 'StencilOperation
268OpDecrWrap :: 'StencilOperation 268OpDecrWrap :: 'StencilOperation
269OpInvert :: 'StencilOperation 269OpInvert :: 'StencilOperation
270'StencilOperationCase :: (a : 'StencilOperation->Type) -> a OpZero -> a OpKeep -> a OpReplace -> a OpIncr -> a OpIncrWrap -> a OpDecr -> a OpDecrWrap -> a OpInvert -> (b:'StencilOperation) -> a b 270'StencilOperationCase :: (a : 'StencilOperation->Type) -> a OpZero -> a OpKeep -> a OpReplace -> a OpIncr -> a OpIncrWrap -> a OpDecr -> a OpDecrWrap -> a OpInvert -> (b:'StencilOperation) -> a b
271match'StencilOperation :: (a : Type->Type) -> a 'StencilOperation -> (b:Type) -> a b -> a b 271match'StencilOperation :: (a : Type->Type) -> a 'StencilOperation -> (b:Type) -> a b -> a b
272'ComparisonFunction :: Type 272'ComparisonFunction :: Type
273Never :: 'ComparisonFunction 273Never :: 'ComparisonFunction
274Less :: 'ComparisonFunction 274Less :: 'ComparisonFunction
275Equal :: 'ComparisonFunction 275Equal :: 'ComparisonFunction
276Lequal :: 'ComparisonFunction 276Lequal :: 'ComparisonFunction
277Greater :: 'ComparisonFunction 277Greater :: 'ComparisonFunction
278Notequal :: 'ComparisonFunction 278Notequal :: 'ComparisonFunction
279Gequal :: 'ComparisonFunction 279Gequal :: 'ComparisonFunction
280Always :: 'ComparisonFunction 280Always :: 'ComparisonFunction
281'ComparisonFunctionCase :: (a : 'ComparisonFunction->Type) -> a Never -> a Less -> a Equal -> a Lequal -> a Greater -> a Notequal -> a Gequal -> a Always -> (b:'ComparisonFunction) -> a b 281'ComparisonFunctionCase :: (a : 'ComparisonFunction->Type) -> a Never -> a Less -> a Equal -> a Lequal -> a Greater -> a Notequal -> a Gequal -> a Always -> (b:'ComparisonFunction) -> a b
282match'ComparisonFunction :: (a : Type->Type) -> a 'ComparisonFunction -> (b:Type) -> a b -> a b 282match'ComparisonFunction :: (a : Type->Type) -> a 'ComparisonFunction -> (b:Type) -> a b -> a b
283'ProvokingVertex :: Type 283'ProvokingVertex :: Type
284LastVertex :: 'ProvokingVertex 284LastVertex :: 'ProvokingVertex
285FirstVertex :: 'ProvokingVertex 285FirstVertex :: 'ProvokingVertex
286'ProvokingVertexCase :: (a : 'ProvokingVertex->Type) -> a LastVertex -> a FirstVertex -> (b:'ProvokingVertex) -> a b 286'ProvokingVertexCase :: (a : 'ProvokingVertex->Type) -> a LastVertex -> a FirstVertex -> (b:'ProvokingVertex) -> a b
287match'ProvokingVertex :: (a : Type->Type) -> a 'ProvokingVertex -> (b:Type) -> a b -> a b 287match'ProvokingVertex :: (a : Type->Type) -> a 'ProvokingVertex -> (b:Type) -> a b -> a b
288'CullMode :: Type 288'CullMode :: Type
289CullFront :: 'CullMode 289CullFront :: 'CullMode
290CullBack :: 'CullMode 290CullBack :: 'CullMode
291CullNone :: 'CullMode 291CullNone :: 'CullMode
292'CullModeCase :: (a : 'CullMode->Type) -> a CullFront -> a CullBack -> a CullNone -> (b:'CullMode) -> a b 292'CullModeCase :: (a : 'CullMode->Type) -> a CullFront -> a CullBack -> a CullNone -> (b:'CullMode) -> a b
293match'CullMode :: (a : Type->Type) -> a 'CullMode -> (b:Type) -> a b -> a b 293match'CullMode :: (a : Type->Type) -> a 'CullMode -> (b:Type) -> a b -> a b
294'PointSize :: Type->Type 294'PointSize :: Type->Type
295PointSize :: {a} -> 'Float -> 'PointSize a 295PointSize :: {a} -> 'Float -> 'PointSize a
296ProgramPointSize :: {a} -> (a->'Float) -> 'PointSize a 296ProgramPointSize :: {a} -> (a->'Float) -> 'PointSize a
297'PointSizeCase :: {a} -> (b : 'PointSize a -> Type) -> ((c:'Float) -> b (PointSize c)) -> ((d : a->'Float) -> b (ProgramPointSize d)) -> (e : 'PointSize a) -> b e 297'PointSizeCase :: {a} -> (b : 'PointSize a -> Type) -> ((c:'Float) -> b (PointSize c)) -> ((d : a->'Float) -> b (ProgramPointSize d)) -> (e : 'PointSize a) -> b e
298match'PointSize :: (a : Type->Type) -> ((b:Type) -> a ('PointSize b)) -> (c:Type) -> a c -> a c 298match'PointSize :: (a : Type->Type) -> ((b:Type) -> a ('PointSize b)) -> (c:Type) -> a c -> a c
299'PolygonMode :: Type->Type 299'PolygonMode :: Type->Type
300PolygonFill :: {a} -> 'PolygonMode a 300PolygonFill :: {a} -> 'PolygonMode a
301PolygonPoint :: {a} -> 'PointSize a -> 'PolygonMode a 301PolygonPoint :: {a} -> 'PointSize a -> 'PolygonMode a
302PolygonLine :: {a} -> 'Float -> 'PolygonMode a 302PolygonLine :: {a} -> 'Float -> 'PolygonMode a
303'PolygonModeCase :: {a} -> (b : 'PolygonMode a -> Type) -> b PolygonFill -> ((c : 'PointSize a) -> b (PolygonPoint c)) -> ((d:'Float) -> b (PolygonLine d)) -> (e : 'PolygonMode a) -> b e 303'PolygonModeCase :: {a} -> (b : 'PolygonMode a -> Type) -> b PolygonFill -> ((c : 'PointSize a) -> b (PolygonPoint c)) -> ((d:'Float) -> b (PolygonLine d)) -> (e : 'PolygonMode a) -> b e
304match'PolygonMode :: (a : Type->Type) -> ((b:Type) -> a ('PolygonMode b)) -> (c:Type) -> a c -> a c 304match'PolygonMode :: (a : Type->Type) -> ((b:Type) -> a ('PolygonMode b)) -> (c:Type) -> a c -> a c
305'PolygonOffset :: Type 305'PolygonOffset :: Type
306NoOffset :: 'PolygonOffset 306NoOffset :: 'PolygonOffset
307Offset :: 'Float -> 'Float->'PolygonOffset 307Offset :: 'Float -> 'Float->'PolygonOffset
308'PolygonOffsetCase :: (a : 'PolygonOffset->Type) -> a NoOffset -> ((b:'Float) -> (c:'Float) -> a (Offset b c)) -> (d:'PolygonOffset) -> a d 308'PolygonOffsetCase :: (a : 'PolygonOffset->Type) -> a NoOffset -> ((b:'Float) -> (c:'Float) -> a (Offset b c)) -> (d:'PolygonOffset) -> a d
309match'PolygonOffset :: (a : Type->Type) -> a 'PolygonOffset -> (b:Type) -> a b -> a b 309match'PolygonOffset :: (a : Type->Type) -> a 'PolygonOffset -> (b:Type) -> a b -> a b
310'PointSpriteCoordOrigin :: Type 310'PointSpriteCoordOrigin :: Type
311LowerLeft :: 'PointSpriteCoordOrigin 311LowerLeft :: 'PointSpriteCoordOrigin
312UpperLeft :: 'PointSpriteCoordOrigin 312UpperLeft :: 'PointSpriteCoordOrigin
313'PointSpriteCoordOriginCase :: (a : 'PointSpriteCoordOrigin->Type) -> a LowerLeft -> a UpperLeft -> (b:'PointSpriteCoordOrigin) -> a b 313'PointSpriteCoordOriginCase :: (a : 'PointSpriteCoordOrigin->Type) -> a LowerLeft -> a UpperLeft -> (b:'PointSpriteCoordOrigin) -> a b
314match'PointSpriteCoordOrigin :: (a : Type->Type) -> a 'PointSpriteCoordOrigin -> (b:Type) -> a b -> a b 314match'PointSpriteCoordOrigin :: (a : Type->Type) -> a 'PointSpriteCoordOrigin -> (b:Type) -> a b -> a b
315primTexture :: () -> 'Vec 2 'Float -> 'Vec 4 'Float 315primTexture :: () -> 'Vec 2 'Float -> 'Vec 4 'Float
316Uniform :: {a} -> 'String->a 316Uniform :: {a} -> 'String->a
317'RasterContext :: Type -> 'PrimitiveType->Type 317'RasterContext :: Type -> 'PrimitiveType->Type
318TriangleCtx :: {a} -> 'CullMode -> 'PolygonMode a -> 'PolygonOffset -> 'ProvokingVertex -> 'RasterContext a Triangle 318TriangleCtx :: {a} -> 'CullMode -> 'PolygonMode a -> 'PolygonOffset -> 'ProvokingVertex -> 'RasterContext a Triangle
319PointCtx :: {a} -> 'PointSize a -> 'Float -> 'PointSpriteCoordOrigin -> 'RasterContext a Point 319PointCtx :: {a} -> 'PointSize a -> 'Float -> 'PointSpriteCoordOrigin -> 'RasterContext a Point
320LineCtx :: {a} -> 'Float -> 'ProvokingVertex -> 'RasterContext a Line 320LineCtx :: {a} -> 'Float -> 'ProvokingVertex -> 'RasterContext a Line
321'RasterContextCase :: {a} -> (b : (c:'PrimitiveType) -> 'RasterContext a c -> Type) -> ((d:'CullMode) -> (e : 'PolygonMode a) -> (f:'PolygonOffset) -> (g:'ProvokingVertex) -> b Triangle (TriangleCtx d e f g)) -> ((h : 'PointSize a) -> (i:'Float) -> (j:'PointSpriteCoordOrigin) -> b Point (PointCtx h i j)) -> ((k:'Float) -> (l:'ProvokingVertex) -> b Line (LineCtx k l)) -> {m:'PrimitiveType} -> (n : 'RasterContext a m) -> b m n 321'RasterContextCase :: {a} -> (b : (c:'PrimitiveType) -> 'RasterContext a c -> Type) -> ((d:'CullMode) -> (e : 'PolygonMode a) -> (f:'PolygonOffset) -> (g:'ProvokingVertex) -> b Triangle (TriangleCtx d e f g)) -> ((h : 'PointSize a) -> (i:'Float) -> (j:'PointSpriteCoordOrigin) -> b Point (PointCtx h i j)) -> ((k:'Float) -> (l:'ProvokingVertex) -> b Line (LineCtx k l)) -> {m:'PrimitiveType} -> (n : 'RasterContext a m) -> b m n
322match'RasterContext :: (a : Type->Type) -> ((b:Type) -> (c:'PrimitiveType) -> a ('RasterContext b c)) -> (d:Type) -> a d -> a d 322match'RasterContext :: (a : Type->Type) -> ((b:Type) -> (c:'PrimitiveType) -> a ('RasterContext b c)) -> (d:Type) -> a d -> a d
323'Blending :: Type->Type 323'Blending :: Type->Type
324NoBlending :: {a} -> 'Blending a 324NoBlending :: {a} -> 'Blending a
325BlendLogicOp :: {a} -> {_ : 'Integral a} -> 'LogicOperation -> 'Blending a 325BlendLogicOp :: {a} -> {_ : 'Integral a} -> 'LogicOperation -> 'Blending a
326Blend :: ('BlendEquation, 'BlendEquation) -> (('BlendingFactor, 'BlendingFactor), ('BlendingFactor, 'BlendingFactor)) -> 'Vec 4 'Float -> 'Blending 'Float 326Blend :: ('BlendEquation, 'BlendEquation) -> (('BlendingFactor, 'BlendingFactor), ('BlendingFactor, 'BlendingFactor)) -> 'Vec 4 'Float -> 'Blending 'Float
327'BlendingCase :: (a : (b:Type) -> 'Blending b -> Type) -> ({c} -> a c (NoBlending c)) -> ({d} -> {e : 'Integral d} -> (f:'LogicOperation) -> a d (BlendLogicOp d e f)) -> ((g:('BlendEquation, 'BlendEquation)) -> (h:(('BlendingFactor, 'BlendingFactor), ('BlendingFactor, 'BlendingFactor))) -> (i : 'Vec 4 'Float) -> a 'Float (Blend g h i)) -> {j} -> (k : 'Blending j) -> a j k 327'BlendingCase :: (a : (b:Type) -> 'Blending b -> Type) -> ({c} -> a c (NoBlending c)) -> ({d} -> {e : 'Integral d} -> (f:'LogicOperation) -> a d (BlendLogicOp d e f)) -> ((g:('BlendEquation, 'BlendEquation)) -> (h:(('BlendingFactor, 'BlendingFactor), ('BlendingFactor, 'BlendingFactor))) -> (i : 'Vec 4 'Float) -> a 'Float (Blend g h i)) -> {j} -> (k : 'Blending j) -> a j k
328match'Blending :: (a : Type->Type) -> ((b:Type) -> a ('Blending b)) -> (c:Type) -> a c -> a c 328match'Blending :: (a : Type->Type) -> ((b:Type) -> a ('Blending b)) -> (c:Type) -> a c -> a c
329'StencilTests :: Type 329'StencilTests :: Type
330'StencilTestsCase :: (a : 'StencilTests->Type) -> (b:'StencilTests) -> a b 330'StencilTestsCase :: (a : 'StencilTests->Type) -> (b:'StencilTests) -> a b
331match'StencilTests :: (a : Type->Type) -> a 'StencilTests -> (b:Type) -> a b -> a b 331match'StencilTests :: (a : Type->Type) -> a 'StencilTests -> (b:Type) -> a b -> a b
332'StencilOps :: Type 332'StencilOps :: Type
333'StencilOpsCase :: (a : 'StencilOps->Type) -> (b:'StencilOps) -> a b 333'StencilOpsCase :: (a : 'StencilOps->Type) -> (b:'StencilOps) -> a b
334match'StencilOps :: (a : Type->Type) -> a 'StencilOps -> (b:Type) -> a b -> a b 334match'StencilOps :: (a : Type->Type) -> a 'StencilOps -> (b:Type) -> a b -> a b
335'FragmentOperation :: 'ImageKind->Type 335'FragmentOperation :: 'ImageKind->Type
336ColorOp :: {a} -> {b:'Nat} -> {_ : 'Num a} -> 'Blending a -> 'VecScalar b 'Bool -> 'FragmentOperation (Color ('VecScalar b a)) 336ColorOp :: {a} -> {b:'Nat} -> {_ : 'Num a} -> 'Blending a -> 'VecScalar b 'Bool -> 'FragmentOperation (Color ('VecScalar b a))
337DepthOp :: 'ComparisonFunction -> 'Bool -> 'FragmentOperation Depth 337DepthOp :: 'ComparisonFunction -> 'Bool -> 'FragmentOperation Depth
338StencilOp :: 'StencilTests -> 'StencilOps -> 'StencilOps -> 'FragmentOperation Stencil 338StencilOp :: 'StencilTests -> 'StencilOps -> 'StencilOps -> 'FragmentOperation Stencil
339'FragmentOperationCase :: (a : (b:'ImageKind) -> 'FragmentOperation b -> Type) -> ({c} -> {d:'Nat} -> {e : 'Num c} -> (f : 'Blending c) -> (g : 'VecScalar d 'Bool) -> a (Color ('VecScalar d c)) (ColorOp c d e f g)) -> ((h:'ComparisonFunction) -> (i:'Bool) -> a Depth (DepthOp h i)) -> ((j:'StencilTests) -> (k:'StencilOps) -> (l:'StencilOps) -> a Stencil (StencilOp j k l)) -> {m:'ImageKind} -> (n : 'FragmentOperation m) -> a m n 339'FragmentOperationCase :: (a : (b:'ImageKind) -> 'FragmentOperation b -> Type) -> ({c} -> {d:'Nat} -> {e : 'Num c} -> (f : 'Blending c) -> (g : 'VecScalar d 'Bool) -> a (Color ('VecScalar d c)) (ColorOp c d e f g)) -> ((h:'ComparisonFunction) -> (i:'Bool) -> a Depth (DepthOp h i)) -> ((j:'StencilTests) -> (k:'StencilOps) -> (l:'StencilOps) -> a Stencil (StencilOp j k l)) -> {m:'ImageKind} -> (n : 'FragmentOperation m) -> a m n
340match'FragmentOperation :: (a : Type->Type) -> ((b:'ImageKind) -> a ('FragmentOperation b)) -> (c:Type) -> a c -> a c 340match'FragmentOperation :: (a : Type->Type) -> ((b:'ImageKind) -> a ('FragmentOperation b)) -> (c:Type) -> a c -> a c
341'Interpolated :: Type->Type 341'Interpolated :: Type->Type
342Smooth :: {a} -> {_ : 'Floating a} -> 'Interpolated a 342Smooth :: {a} -> {_ : 'Floating a} -> 'Interpolated a
343NoPerspective :: {a} -> {_ : 'Floating a} -> 'Interpolated a 343NoPerspective :: {a} -> {_ : 'Floating a} -> 'Interpolated a
344Flat :: {a} -> 'Interpolated a 344Flat :: {a} -> 'Interpolated a
345'InterpolatedCase :: {a} -> (b : 'Interpolated a -> Type) -> ({c : 'Floating a} -> b (Smooth c)) -> ({d : 'Floating a} -> b (NoPerspective d)) -> b Flat -> (e : 'Interpolated a) -> b e 345'InterpolatedCase :: {a} -> (b : 'Interpolated a -> Type) -> ({c : 'Floating a} -> b (Smooth c)) -> ({d : 'Floating a} -> b (NoPerspective d)) -> b Flat -> (e : 'Interpolated a) -> b e
346match'Interpolated :: (a : Type->Type) -> ((b:Type) -> a ('Interpolated b)) -> (c:Type) -> a c -> a c 346match'Interpolated :: (a : Type->Type) -> ((b:Type) -> a ('Interpolated b)) -> (c:Type) -> a c -> a c
347rasterizePrimitive :: {a : 'List Type} -> {b : 'List Type} -> {c : 'List Type} -> {d:'PrimitiveType} -> {_ : map Type Type 'Interpolated a ~ b} -> {_ : c ~ Cons ('Vec 4 'Float) a} -> 'HList b -> 'RasterContext ('HList c) d -> 'Primitive ('HList c) d -> 'FragmentStream 1 ('HList a) 347rasterizePrimitive :: {a : 'List Type} -> {b : 'List Type} -> {c : 'List Type} -> {d:'PrimitiveType} -> {_ : map Type Type 'Interpolated a ~ b} -> {_ : c ~ Cons ('Vec 4 'Float) a} -> 'HList b -> 'RasterContext ('HList c) d -> 'Primitive ('HList c) d -> 'FragmentStream 1 ('HList a)
348rasterizePrimitives :: {a : 'List Type} -> {b:'PrimitiveType} -> 'RasterContext ('HList (Cons ('Vec 4 'Float) a)) b -> 'HList (map Type Type 'Interpolated a) -> 'List ('Primitive ('HList (Cons ('Vec 4 'Float) a)) b) -> 'List ('Vector 1 ('Maybe ('SimpleFragment ('HList a)))) 348rasterizePrimitives :: {a : 'List Type} -> {b:'PrimitiveType} -> 'RasterContext ('HList (Cons ('Vec 4 'Float) a)) b -> 'HList (map Type Type 'Interpolated a) -> 'List ('Primitive ('HList (Cons ('Vec 4 'Float) a)) b) -> 'List ('Vector 1 ('Maybe ('SimpleFragment ('HList a))))
349'ImageLC :: Type->'Nat 349'ImageLC :: Type->'Nat
350allSame :: {a} -> 'List a -> Type 350allSame :: {a} -> 'List a -> Type
351sameLayerCounts :: 'List Type -> Type 351sameLayerCounts :: 'List Type -> Type
352'FrameBuffer :: 'Nat -> 'List 'ImageKind -> Type 352'FrameBuffer :: 'Nat -> 'List 'ImageKind -> Type
353'FrameBufferCase :: {a:'Nat} -> {b : 'List 'ImageKind} -> (c : 'FrameBuffer a b -> Type) -> (d : 'FrameBuffer a b) -> c d 353'FrameBufferCase :: {a:'Nat} -> {b : 'List 'ImageKind} -> (c : 'FrameBuffer a b -> Type) -> (d : 'FrameBuffer a b) -> c d
354match'FrameBuffer :: (a : Type->Type) -> ((b:'Nat) -> (c : 'List 'ImageKind) -> a ('FrameBuffer b c)) -> (d:Type) -> a d -> a d 354match'FrameBuffer :: (a : Type->Type) -> ((b:'Nat) -> (c : 'List 'ImageKind) -> a ('FrameBuffer b c)) -> (d:Type) -> a d -> a d
355imageType' :: 'List 'ImageKind -> 'List Type 355imageType' :: 'List 'ImageKind -> 'List Type
356'FragmentOperationKind :: Type->'ImageKind 356'FragmentOperationKind :: Type->'ImageKind
357Accumulate :: {a : 'List 'ImageKind} -> {b:'Nat} -> {c : 'List Type} -> {_ : a ~ map Type 'ImageKind 'FragmentOperationKind c} -> 'HList c -> 'FragmentStream b ('HList (imageType' a)) -> 'FrameBuffer b a -> 'FrameBuffer b a 357Accumulate :: {a : 'List 'ImageKind} -> {b:'Nat} -> {c : 'List Type} -> {_ : a ~ map Type 'ImageKind 'FragmentOperationKind c} -> 'HList c -> 'FragmentStream b ('HList (imageType' a)) -> 'FrameBuffer b a -> 'FrameBuffer b a
358accumulateWith :: {a} -> {b} -> a -> b->(a, b) 358accumulateWith :: {a} -> {b} -> a -> b->(a, b)
359overlay :: {a:'Nat} -> {b : 'List Type} -> 'FrameBuffer a (map Type 'ImageKind 'FragmentOperationKind b) -> ('HList b, 'List ('Fragment a ('HList (imageType' (map Type 'ImageKind 'FragmentOperationKind b))))) -> 'FrameBuffer a (map Type 'ImageKind 'FragmentOperationKind b) 359overlay :: {a:'Nat} -> {b : 'List Type} -> 'FrameBuffer a (map Type 'ImageKind 'FragmentOperationKind b) -> ('HList b, 'List ('Fragment a ('HList (imageType' (map Type 'ImageKind 'FragmentOperationKind b))))) -> 'FrameBuffer a (map Type 'ImageKind 'FragmentOperationKind b)
360'GetImageKind :: Type->'ImageKind 360'GetImageKind :: Type->'ImageKind
361FrameBuffer :: {a : 'List Type} -> {_ : sameLayerCounts a} -> 'HList a -> 'FrameBuffer ('ImageLC (head Type a)) (map Type 'ImageKind 'GetImageKind a) 361FrameBuffer :: {a : 'List Type} -> {_ : sameLayerCounts a} -> 'HList a -> 'FrameBuffer ('ImageLC (head Type a)) (map Type 'ImageKind 'GetImageKind a)
362imageFrame :: {a : 'List Type} -> {_ : sameLayerCounts a} -> 'HList a -> 'FrameBuffer ('ImageLC (head Type a)) (map Type 'ImageKind 'GetImageKind a) 362imageFrame :: {a : 'List Type} -> {_ : sameLayerCounts a} -> 'HList a -> 'FrameBuffer ('ImageLC (head Type a)) (map Type 'ImageKind 'GetImageKind a)
363accumulate :: {a:'Nat} -> {b : 'List Type} -> {c} -> 'HList b -> (c -> 'HList (imageType' (map Type 'ImageKind 'FragmentOperationKind b))) -> 'List ('Vector a ('Maybe ('SimpleFragment c))) -> 'FrameBuffer a (map Type 'ImageKind 'FragmentOperationKind b) -> 'FrameBuffer a (map Type 'ImageKind 'FragmentOperationKind b) 363accumulate :: {a:'Nat} -> {b : 'List Type} -> {c} -> 'HList b -> (c -> 'HList (imageType' (map Type 'ImageKind 'FragmentOperationKind b))) -> 'List ('Vector a ('Maybe ('SimpleFragment c))) -> 'FrameBuffer a (map Type 'ImageKind 'FragmentOperationKind b) -> 'FrameBuffer a (map Type 'ImageKind 'FragmentOperationKind b)
364PrjImage :: {a:'ImageKind} -> 'FrameBuffer 1 (Cons a Nil) -> 'Image 1 a 364PrjImage :: {a:'ImageKind} -> 'FrameBuffer 1 (Cons a Nil) -> 'Image 1 a
365PrjImageColor :: 'FrameBuffer 1 (Cons Depth (Cons (Color ('Vec 4 'Float)) Nil)) -> 'Image 1 (Color ('Vec 4 'Float)) 365PrjImageColor :: 'FrameBuffer 1 (Cons Depth (Cons (Color ('Vec 4 'Float)) Nil)) -> 'Image 1 (Color ('Vec 4 'Float))
366'Output :: Type 366'Output :: Type
367ScreenOut :: {a:'Nat} -> {b : 'List 'ImageKind} -> 'FrameBuffer a b -> 'Output 367ScreenOut :: {a:'Nat} -> {b : 'List 'ImageKind} -> 'FrameBuffer a b -> 'Output
368'OutputCase :: (a : 'Output->Type) -> ({b:'Nat} -> {c : 'List 'ImageKind} -> (d : 'FrameBuffer b c) -> a (ScreenOut b c d)) -> (e:'Output) -> a e 368'OutputCase :: (a : 'Output->Type) -> ({b:'Nat} -> {c : 'List 'ImageKind} -> (d : 'FrameBuffer b c) -> a (ScreenOut b c d)) -> (e:'Output) -> a e
369match'Output :: (a : Type->Type) -> a 'Output -> (b:Type) -> a b -> a b 369match'Output :: (a : Type->Type) -> a 'Output -> (b:Type) -> a b -> a b
370renderFrame :: {a:'Nat} -> {b : 'List 'ImageKind} -> 'FrameBuffer a b -> 'Output 370renderFrame :: {a:'Nat} -> {b : 'List 'ImageKind} -> 'FrameBuffer a b -> 'Output
371'Texture :: Type 371'Texture :: Type
372Texture2DSlot :: 'String->'Texture 372Texture2DSlot :: 'String->'Texture
373Texture2D :: 'Vec 2 'Int -> 'Image 1 (Color ('Vec 4 'Float)) -> 'Texture 373Texture2D :: 'Vec 2 'Int -> 'Image 1 (Color ('Vec 4 'Float)) -> 'Texture
374'TextureCase :: (a : 'Texture->Type) -> ((b:'String) -> a (Texture2DSlot b)) -> ((c : 'Vec 2 'Int) -> (d : 'Image 1 (Color ('Vec 4 'Float))) -> a (Texture2D c d)) -> (e:'Texture) -> a e 374'TextureCase :: (a : 'Texture->Type) -> ((b:'String) -> a (Texture2DSlot b)) -> ((c : 'Vec 2 'Int) -> (d : 'Image 1 (Color ('Vec 4 'Float))) -> a (Texture2D c d)) -> (e:'Texture) -> a e
375match'Texture :: (a : Type->Type) -> a 'Texture -> (b:Type) -> a b -> a b 375match'Texture :: (a : Type->Type) -> a 'Texture -> (b:Type) -> a b -> a b
376'Filter :: Type 376'Filter :: Type
377PointFilter :: 'Filter 377PointFilter :: 'Filter
378LinearFilter :: 'Filter 378LinearFilter :: 'Filter
379'FilterCase :: (a : 'Filter->Type) -> a PointFilter -> a LinearFilter -> (b:'Filter) -> a b 379'FilterCase :: (a : 'Filter->Type) -> a PointFilter -> a LinearFilter -> (b:'Filter) -> a b
380match'Filter :: (a : Type->Type) -> a 'Filter -> (b:Type) -> a b -> a b 380match'Filter :: (a : Type->Type) -> a 'Filter -> (b:Type) -> a b -> a b
381'EdgeMode :: Type 381'EdgeMode :: Type
382Repeat :: 'EdgeMode 382Repeat :: 'EdgeMode
383MirroredRepeat :: 'EdgeMode 383MirroredRepeat :: 'EdgeMode
384ClampToEdge :: 'EdgeMode 384ClampToEdge :: 'EdgeMode
385'EdgeModeCase :: (a : 'EdgeMode->Type) -> a Repeat -> a MirroredRepeat -> a ClampToEdge -> (b:'EdgeMode) -> a b 385'EdgeModeCase :: (a : 'EdgeMode->Type) -> a Repeat -> a MirroredRepeat -> a ClampToEdge -> (b:'EdgeMode) -> a b
386match'EdgeMode :: (a : Type->Type) -> a 'EdgeMode -> (b:Type) -> a b -> a b 386match'EdgeMode :: (a : Type->Type) -> a 'EdgeMode -> (b:Type) -> a b -> a b
387'Sampler :: Type 387'Sampler :: Type
388Sampler :: 'Filter -> 'EdgeMode -> 'Texture->'Sampler 388Sampler :: 'Filter -> 'EdgeMode -> 'Texture->'Sampler
389'SamplerCase :: (a : 'Sampler->Type) -> ((b:'Filter) -> (c:'EdgeMode) -> (d:'Texture) -> a (Sampler b c d)) -> (e:'Sampler) -> a e 389'SamplerCase :: (a : 'Sampler->Type) -> ((b:'Filter) -> (c:'EdgeMode) -> (d:'Texture) -> a (Sampler b c d)) -> (e:'Sampler) -> a e
390match'Sampler :: (a : Type->Type) -> a 'Sampler -> (b:Type) -> a b -> a b 390match'Sampler :: (a : Type->Type) -> a 'Sampler -> (b:Type) -> a b -> a b
391texture2D :: 'Sampler -> 'Vec 2 'Float -> 'Vec 4 'Float 391texture2D :: 'Sampler -> 'Vec 2 'Float -> 'Vec 4 'Float
392accumulationContext :: {a} -> a->a 392accumulationContext :: {a} -> a->a
393------------ tooltips 393------------ tooltips
394testdata/Builtins.lc 10:1-10:3 {a} -> a->a 394testdata/Builtins.lc 10:1-10:3 {a} -> a->a
395testdata/Builtins.lc 10:8-10:9 b_ 395testdata/Builtins.lc 10:8-10:9 b_
diff --git a/testdata/Internals.out b/testdata/Internals.out
index 2fd24406..8f9dc73c 100644
--- a/testdata/Internals.out
+++ b/testdata/Internals.out
@@ -1,90 +1,90 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3typeAnn :: {a} -> a->a 3typeAnn :: {a} -> a->a
4parens :: {a} -> a->a 4parens :: {a} -> a->a
5undefined :: {a}->a 5undefined :: {a}->a
6primFix :: {a} -> (a->a)->a 6primFix :: {a} -> (a->a)->a
7'Unit :: Type 7'Unit :: Type
8TT :: 'Unit 8TT :: 'Unit
9'UnitCase :: (a : 'Unit->Type) -> a TT -> (b:'Unit) -> a b 9'UnitCase :: (a : 'Unit->Type) -> a TT -> (b:'Unit) -> a b
10match'Unit :: (a : Type->Type) -> a 'Unit -> (b:Type) -> a b -> a b 10match'Unit :: (a : Type->Type) -> a 'Unit -> (b:Type) -> a b -> a b
11'String :: Type 11'String :: Type
12'StringCase :: (a : 'String->Type) -> (b:'String) -> a b 12'StringCase :: (a : 'String->Type) -> (b:'String) -> a b
13match'String :: (a : Type->Type) -> a 'String -> (b:Type) -> a b -> a b 13match'String :: (a : Type->Type) -> a 'String -> (b:Type) -> a b -> a b
14'Empty :: 'String->Type 14'Empty :: 'String->Type
15'EmptyCase :: {a:'String} -> (b : 'Empty a -> Type) -> (c : 'Empty a) -> b c 15'EmptyCase :: {a:'String} -> (b : 'Empty a -> Type) -> (c : 'Empty a) -> b c
16match'Empty :: (a : Type->Type) -> ((b:'String) -> a ('Empty b)) -> (c:Type) -> a c -> a c 16match'Empty :: (a : Type->Type) -> ((b:'String) -> a ('Empty b)) -> (c:Type) -> a c -> a c
17unsafeCoerce :: {a} -> {b} -> a->b 17unsafeCoerce :: {a} -> {b} -> a->b
18'EqCT :: (a:Type) -> a -> a->Type 18'EqCT :: (a:Type) -> a -> a->Type
19parEval :: (a:Type) -> a -> a->a 19parEval :: (a:Type) -> a -> a->a
20'T2 :: Type -> Type->Type 20'T2 :: Type -> Type->Type
21match'Type :: (a : Type->Type) -> a Type -> (b:Type) -> a b -> a b 21match'Type :: (a : Type->Type) -> a Type -> (b:Type) -> a b -> a b
22'EqCTt :: {a} -> a -> a->Type 22'EqCTt :: {a} -> a -> a->Type
23t2C :: 'Unit -> 'Unit->'Unit 23t2C :: 'Unit -> 'Unit->'Unit
24'Int :: Type 24'Int :: Type
25'IntCase :: (a : 'Int->Type) -> (b:'Int) -> a b 25'IntCase :: (a : 'Int->Type) -> (b:'Int) -> a b
26match'Int :: (a : Type->Type) -> a 'Int -> (b:Type) -> a b -> a b 26match'Int :: (a : Type->Type) -> a 'Int -> (b:Type) -> a b -> a b
27'Word :: Type 27'Word :: Type
28'WordCase :: (a : 'Word->Type) -> (b:'Word) -> a b 28'WordCase :: (a : 'Word->Type) -> (b:'Word) -> a b
29match'Word :: (a : Type->Type) -> a 'Word -> (b:Type) -> a b -> a b 29match'Word :: (a : Type->Type) -> a 'Word -> (b:Type) -> a b -> a b
30'Float :: Type 30'Float :: Type
31'FloatCase :: (a : 'Float->Type) -> (b:'Float) -> a b 31'FloatCase :: (a : 'Float->Type) -> (b:'Float) -> a b
32match'Float :: (a : Type->Type) -> a 'Float -> (b:Type) -> a b -> a b 32match'Float :: (a : Type->Type) -> a 'Float -> (b:Type) -> a b -> a b
33'Char :: Type 33'Char :: Type
34'CharCase :: (a : 'Char->Type) -> (b:'Char) -> a b 34'CharCase :: (a : 'Char->Type) -> (b:'Char) -> a b
35match'Char :: (a : Type->Type) -> a 'Char -> (b:Type) -> a b -> a b 35match'Char :: (a : Type->Type) -> a 'Char -> (b:Type) -> a b -> a b
36'Bool :: Type 36'Bool :: Type
37False :: 'Bool 37False :: 'Bool
38True :: 'Bool 38True :: 'Bool
39'BoolCase :: (a : 'Bool->Type) -> a False -> a True -> (b:'Bool) -> a b 39'BoolCase :: (a : 'Bool->Type) -> a False -> a True -> (b:'Bool) -> a b
40match'Bool :: (a : Type->Type) -> a 'Bool -> (b:Type) -> a b -> a b 40match'Bool :: (a : Type->Type) -> a 'Bool -> (b:Type) -> a b -> a b
41'Ordering :: Type 41'Ordering :: Type
42LT :: 'Ordering 42LT :: 'Ordering
43EQ :: 'Ordering 43EQ :: 'Ordering
44GT :: 'Ordering 44GT :: 'Ordering
45'OrderingCase :: (a : 'Ordering->Type) -> a LT -> a EQ -> a GT -> (b:'Ordering) -> a b 45'OrderingCase :: (a : 'Ordering->Type) -> a LT -> a EQ -> a GT -> (b:'Ordering) -> a b
46match'Ordering :: (a : Type->Type) -> a 'Ordering -> (b:Type) -> a b -> a b 46match'Ordering :: (a : Type->Type) -> a 'Ordering -> (b:Type) -> a b -> a b
47'Nat :: Type 47'Nat :: Type
48Zero :: 'Nat 48Zero :: 'Nat
49Succ :: 'Nat->'Nat 49Succ :: 'Nat->'Nat
50'NatCase :: (a : 'Nat->Type) -> a 0 -> ((b:'Nat) -> a (Succ b)) -> (c:'Nat) -> a c 50'NatCase :: (a : 'Nat->Type) -> a 0 -> ((b:'Nat) -> a (Succ b)) -> (c:'Nat) -> a c
51match'Nat :: (a : Type->Type) -> a 'Nat -> (b:Type) -> a b -> a b 51match'Nat :: (a : Type->Type) -> a 'Nat -> (b:Type) -> a b -> a b
52primIntToWord :: 'Int->'Word 52primIntToWord :: 'Int->'Word
53primIntToFloat :: 'Int->'Float 53primIntToFloat :: 'Int->'Float
54primIntToNat :: 'Int->'Nat 54primIntToNat :: 'Int->'Nat
55primCompareInt :: 'Int -> 'Int->'Ordering 55primCompareInt :: 'Int -> 'Int->'Ordering
56primCompareWord :: 'Word -> 'Word->'Ordering 56primCompareWord :: 'Word -> 'Word->'Ordering
57primCompareFloat :: 'Float -> 'Float->'Ordering 57primCompareFloat :: 'Float -> 'Float->'Ordering
58primCompareChar :: 'Char -> 'Char->'Ordering 58primCompareChar :: 'Char -> 'Char->'Ordering
59primCompareString :: 'String -> 'String->'Ordering 59primCompareString :: 'String -> 'String->'Ordering
60primNegateInt :: 'Int->'Int 60primNegateInt :: 'Int->'Int
61primNegateWord :: 'Word->'Word 61primNegateWord :: 'Word->'Word
62primNegateFloat :: 'Float->'Float 62primNegateFloat :: 'Float->'Float
63primAddInt :: 'Int -> 'Int->'Int 63primAddInt :: 'Int -> 'Int->'Int
64primSubInt :: 'Int -> 'Int->'Int 64primSubInt :: 'Int -> 'Int->'Int
65primModInt :: 'Int -> 'Int->'Int 65primModInt :: 'Int -> 'Int->'Int
66primSqrtFloat :: 'Float->'Float 66primSqrtFloat :: 'Float->'Float
67primRound :: 'Float->'Int 67primRound :: 'Float->'Int
68primIfThenElse :: {a} -> 'Bool -> a -> a->a 68primIfThenElse :: {a} -> 'Bool -> a -> a->a
69isEQ :: 'Ordering->'Bool 69isEQ :: 'Ordering->'Bool
70'Num :: Type->Type 70'Num :: Type->Type
71fromInt :: {a} -> {_ : 'Num a} -> 'Int->a 71fromInt :: {a} -> {_ : 'Num a} -> 'Int->a
72compare :: {a} -> {_ : 'Num a} -> a -> a->'Ordering 72compare :: {a} -> {_ : 'Num a} -> a -> a->'Ordering
73negate :: {a} -> {_ : 'Num a} -> a->a 73negate :: {a} -> {_ : 'Num a} -> a->a
74'Eq :: Type->Type 74'Eq :: Type->Type
75== :: {a} -> {_ : 'Eq a} -> a -> a->'Bool 75== :: {a} -> {_ : 'Eq a} -> a -> a->'Bool
76'List :: Type->Type 76'List :: Type->Type
77Nil :: {a} -> 'List a 77Nil :: {a} -> 'List a
78Cons :: {a} -> a -> 'List a -> 'List a 78Cons :: {a} -> a -> 'List a -> 'List a
79'ListCase :: {a} -> (b : 'List a -> Type) -> b Nil -> ((c:a) -> (d : 'List a) -> b (Cons c d)) -> (e : 'List a) -> b e 79'ListCase :: {a} -> (b : 'List a -> Type) -> b Nil -> ((c:a) -> (d : 'List a) -> b (Cons c d)) -> (e : 'List a) -> b e
80match'List :: (a : Type->Type) -> ((b:Type) -> a ('List b)) -> (c:Type) -> a c -> a c 80match'List :: (a : Type->Type) -> ((b:Type) -> a ('List b)) -> (c:Type) -> a c -> a c
81'HList :: 'List Type -> Type 81'HList :: 'List Type -> Type
82HNil :: () 82HNil :: ()
83HCons :: {a} -> {b : 'List Type} -> a -> 'HList b -> 'HList (Cons a b) 83HCons :: {a} -> {b : 'List Type} -> a -> 'HList b -> 'HList (Cons a b)
84'HListCase :: (a : (b : 'List Type) -> 'HList b -> Type) -> a Nil () -> ({c} -> {d : 'List Type} -> (e:c) -> (f : 'HList d) -> a (Cons c d) (HCons c d e f)) -> {g : 'List Type} -> (h : 'HList g) -> a g h 84'HListCase :: (a : (b : 'List Type) -> 'HList b -> Type) -> a Nil () -> ({c} -> {d : 'List Type} -> (e:c) -> (f : 'HList d) -> a (Cons c d) (HCons c d e f)) -> {g : 'List Type} -> (h : 'HList g) -> a g h
85match'HList :: (a : Type->Type) -> ((b : 'List Type) -> a ('HList b)) -> (c:Type) -> a c -> a c 85match'HList :: (a : Type->Type) -> ((b : 'List Type) -> a ('HList b)) -> (c:Type) -> a c -> a c
86hlistNilCase :: (a:Type) -> a -> ()->a 86hlistNilCase :: (a:Type) -> a -> ()->a
87hlistConsCase :: {a} -> {b : 'List Type} -> (c:Type) -> (a -> 'HList b -> c) -> 'HList (Cons a b) -> c 87hlistConsCase :: {a} -> {b : 'List Type} -> (c:Type) -> (a -> 'HList b -> c) -> 'HList (Cons a b) -> c
88------------ tooltips 88------------ tooltips
89testdata/Internals.lc 6:1-6:8 {a} -> a->a 89testdata/Internals.lc 6:1-6:8 {a} -> a->a
90testdata/Internals.lc 6:13-6:14 b_ 90testdata/Internals.lc 6:13-6:14 b_
diff --git a/testdata/Material.out b/testdata/Material.out
index 874319e4..0e4834d2 100644
--- a/testdata/Material.out
+++ b/testdata/Material.out
@@ -1,161 +1,161 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3identityLight :: 'Float 3identityLight :: 'Float
4'Entity :: Type 4'Entity :: Type
5Entity :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 3 'Float -> 'Vec 4 'Float -> 'Entity 5Entity :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 3 'Float -> 'Vec 4 'Float -> 'Entity
6'EntityCase :: (a : 'Entity->Type) -> ((b : 'Vec 4 'Float) -> (c : 'Vec 4 'Float) -> (d : 'Vec 3 'Float) -> (e : 'Vec 4 'Float) -> a (Entity b c d e)) -> (f:'Entity) -> a f 6'EntityCase :: (a : 'Entity->Type) -> ((b : 'Vec 4 'Float) -> (c : 'Vec 4 'Float) -> (d : 'Vec 3 'Float) -> (e : 'Vec 4 'Float) -> a (Entity b c d e)) -> (f:'Entity) -> a f
7match'Entity :: (a : Type->Type) -> a 'Entity -> (b:Type) -> a b -> a b 7match'Entity :: (a : Type->Type) -> a 'Entity -> (b:Type) -> a b -> a b
8eAmbientLight :: 'Entity -> 'VecS 'Float 4 8eAmbientLight :: 'Entity -> 'VecS 'Float 4
9eDirectedLight :: 'Entity -> 'VecS 'Float 4 9eDirectedLight :: 'Entity -> 'VecS 'Float 4
10eLightDir :: 'Entity -> 'VecS 'Float 3 10eLightDir :: 'Entity -> 'VecS 'Float 3
11eShaderRGBA :: 'Entity -> 'VecS 'Float 4 11eShaderRGBA :: 'Entity -> 'VecS 'Float 4
12'WaveType :: Type 12'WaveType :: Type
13WT_Sin :: 'WaveType 13WT_Sin :: 'WaveType
14WT_Triangle :: 'WaveType 14WT_Triangle :: 'WaveType
15WT_Square :: 'WaveType 15WT_Square :: 'WaveType
16WT_Sawtooth :: 'WaveType 16WT_Sawtooth :: 'WaveType
17WT_InverseSawtooth :: 'WaveType 17WT_InverseSawtooth :: 'WaveType
18WT_Noise :: 'WaveType 18WT_Noise :: 'WaveType
19'WaveTypeCase :: (a : 'WaveType->Type) -> a WT_Sin -> a WT_Triangle -> a WT_Square -> a WT_Sawtooth -> a WT_InverseSawtooth -> a WT_Noise -> (b:'WaveType) -> a b 19'WaveTypeCase :: (a : 'WaveType->Type) -> a WT_Sin -> a WT_Triangle -> a WT_Square -> a WT_Sawtooth -> a WT_InverseSawtooth -> a WT_Noise -> (b:'WaveType) -> a b
20match'WaveType :: (a : Type->Type) -> a 'WaveType -> (b:Type) -> a b -> a b 20match'WaveType :: (a : Type->Type) -> a 'WaveType -> (b:Type) -> a b -> a b
21'Wave :: Type 21'Wave :: Type
22Wave :: 'WaveType -> 'Float -> 'Float -> 'Float -> 'Float->'Wave 22Wave :: 'WaveType -> 'Float -> 'Float -> 'Float -> 'Float->'Wave
23'WaveCase :: (a : 'Wave->Type) -> ((b:'WaveType) -> (c:'Float) -> (d:'Float) -> (e:'Float) -> (f:'Float) -> a (Wave b c d e f)) -> (g:'Wave) -> a g 23'WaveCase :: (a : 'Wave->Type) -> ((b:'WaveType) -> (c:'Float) -> (d:'Float) -> (e:'Float) -> (f:'Float) -> a (Wave b c d e f)) -> (g:'Wave) -> a g
24match'Wave :: (a : Type->Type) -> a 'Wave -> (b:Type) -> a b -> a b 24match'Wave :: (a : Type->Type) -> a 'Wave -> (b:Type) -> a b -> a b
25'Deform :: Type 25'Deform :: Type
26D_AutoSprite :: 'Deform 26D_AutoSprite :: 'Deform
27D_AutoSprite2 :: 'Deform 27D_AutoSprite2 :: 'Deform
28D_Bulge :: 'Float -> 'Float -> 'Float->'Deform 28D_Bulge :: 'Float -> 'Float -> 'Float->'Deform
29D_Move :: 'Vec 3 'Float -> 'Wave->'Deform 29D_Move :: 'Vec 3 'Float -> 'Wave->'Deform
30D_Normal :: 'Float -> 'Float->'Deform 30D_Normal :: 'Float -> 'Float->'Deform
31D_ProjectionShadow :: 'Deform 31D_ProjectionShadow :: 'Deform
32D_Text0 :: 'Deform 32D_Text0 :: 'Deform
33D_Text1 :: 'Deform 33D_Text1 :: 'Deform
34D_Text2 :: 'Deform 34D_Text2 :: 'Deform
35D_Text3 :: 'Deform 35D_Text3 :: 'Deform
36D_Text4 :: 'Deform 36D_Text4 :: 'Deform
37D_Text5 :: 'Deform 37D_Text5 :: 'Deform
38D_Text6 :: 'Deform 38D_Text6 :: 'Deform
39D_Text7 :: 'Deform 39D_Text7 :: 'Deform
40D_Wave :: 'Float -> 'Wave->'Deform 40D_Wave :: 'Float -> 'Wave->'Deform
41'DeformCase :: (a : 'Deform->Type) -> a D_AutoSprite -> a D_AutoSprite2 -> ((b:'Float) -> (c:'Float) -> (d:'Float) -> a (D_Bulge b c d)) -> ((e : 'Vec 3 'Float) -> (f:'Wave) -> a (D_Move e f)) -> ((g:'Float) -> (h:'Float) -> a (D_Normal g h)) -> a D_ProjectionShadow -> a D_Text0 -> a D_Text1 -> a D_Text2 -> a D_Text3 -> a D_Text4 -> a D_Text5 -> a D_Text6 -> a D_Text7 -> ((i:'Float) -> (j:'Wave) -> a (D_Wave i j)) -> (k:'Deform) -> a k 41'DeformCase :: (a : 'Deform->Type) -> a D_AutoSprite -> a D_AutoSprite2 -> ((b:'Float) -> (c:'Float) -> (d:'Float) -> a (D_Bulge b c d)) -> ((e : 'Vec 3 'Float) -> (f:'Wave) -> a (D_Move e f)) -> ((g:'Float) -> (h:'Float) -> a (D_Normal g h)) -> a D_ProjectionShadow -> a D_Text0 -> a D_Text1 -> a D_Text2 -> a D_Text3 -> a D_Text4 -> a D_Text5 -> a D_Text6 -> a D_Text7 -> ((i:'Float) -> (j:'Wave) -> a (D_Wave i j)) -> (k:'Deform) -> a k
42match'Deform :: (a : Type->Type) -> a 'Deform -> (b:Type) -> a b -> a b 42match'Deform :: (a : Type->Type) -> a 'Deform -> (b:Type) -> a b -> a b
43'CullType :: Type 43'CullType :: Type
44CT_FrontSided :: 'CullType 44CT_FrontSided :: 'CullType
45CT_BackSided :: 'CullType 45CT_BackSided :: 'CullType
46CT_TwoSided :: 'CullType 46CT_TwoSided :: 'CullType
47'CullTypeCase :: (a : 'CullType->Type) -> a CT_FrontSided -> a CT_BackSided -> a CT_TwoSided -> (b:'CullType) -> a b 47'CullTypeCase :: (a : 'CullType->Type) -> a CT_FrontSided -> a CT_BackSided -> a CT_TwoSided -> (b:'CullType) -> a b
48match'CullType :: (a : Type->Type) -> a 'CullType -> (b:Type) -> a b -> a b 48match'CullType :: (a : Type->Type) -> a 'CullType -> (b:Type) -> a b -> a b
49'Blending' :: Type 49'Blending' :: Type
50B_DstAlpha :: 'Blending' 50B_DstAlpha :: 'Blending'
51B_DstColor :: 'Blending' 51B_DstColor :: 'Blending'
52B_One :: 'Blending' 52B_One :: 'Blending'
53B_OneMinusDstAlpha :: 'Blending' 53B_OneMinusDstAlpha :: 'Blending'
54B_OneMinusDstColor :: 'Blending' 54B_OneMinusDstColor :: 'Blending'
55B_OneMinusSrcAlpha :: 'Blending' 55B_OneMinusSrcAlpha :: 'Blending'
56B_OneMinusSrcColor :: 'Blending' 56B_OneMinusSrcColor :: 'Blending'
57B_SrcAlpha :: 'Blending' 57B_SrcAlpha :: 'Blending'
58B_SrcAlphaSaturate :: 'Blending' 58B_SrcAlphaSaturate :: 'Blending'
59B_SrcColor :: 'Blending' 59B_SrcColor :: 'Blending'
60B_Zero :: 'Blending' 60B_Zero :: 'Blending'
61'Blending'Case :: (a : 'Blending'->Type) -> a B_DstAlpha -> a B_DstColor -> a B_One -> a B_OneMinusDstAlpha -> a B_OneMinusDstColor -> a B_OneMinusSrcAlpha -> a B_OneMinusSrcColor -> a B_SrcAlpha -> a B_SrcAlphaSaturate -> a B_SrcColor -> a B_Zero -> (b:'Blending') -> a b 61'Blending'Case :: (a : 'Blending'->Type) -> a B_DstAlpha -> a B_DstColor -> a B_One -> a B_OneMinusDstAlpha -> a B_OneMinusDstColor -> a B_OneMinusSrcAlpha -> a B_OneMinusSrcColor -> a B_SrcAlpha -> a B_SrcAlphaSaturate -> a B_SrcColor -> a B_Zero -> (b:'Blending') -> a b
62match'Blending' :: (a : Type->Type) -> a 'Blending' -> (b:Type) -> a b -> a b 62match'Blending' :: (a : Type->Type) -> a 'Blending' -> (b:Type) -> a b -> a b
63'RGBGen :: Type 63'RGBGen :: Type
64RGB_Wave :: 'Wave->'RGBGen 64RGB_Wave :: 'Wave->'RGBGen
65RGB_Const :: 'Float -> 'Float -> 'Float->'RGBGen 65RGB_Const :: 'Float -> 'Float -> 'Float->'RGBGen
66RGB_Identity :: 'RGBGen 66RGB_Identity :: 'RGBGen
67RGB_IdentityLighting :: 'RGBGen 67RGB_IdentityLighting :: 'RGBGen
68RGB_Entity :: 'RGBGen 68RGB_Entity :: 'RGBGen
69RGB_OneMinusEntity :: 'RGBGen 69RGB_OneMinusEntity :: 'RGBGen
70RGB_ExactVertex :: 'RGBGen 70RGB_ExactVertex :: 'RGBGen
71RGB_Vertex :: 'RGBGen 71RGB_Vertex :: 'RGBGen
72RGB_LightingDiffuse :: 'RGBGen 72RGB_LightingDiffuse :: 'RGBGen
73RGB_OneMinusVertex :: 'RGBGen 73RGB_OneMinusVertex :: 'RGBGen
74RGB_Undefined :: 'RGBGen 74RGB_Undefined :: 'RGBGen
75'RGBGenCase :: (a : 'RGBGen->Type) -> ((b:'Wave) -> a (RGB_Wave b)) -> ((c:'Float) -> (d:'Float) -> (e:'Float) -> a (RGB_Const c d e)) -> a RGB_Identity -> a RGB_IdentityLighting -> a RGB_Entity -> a RGB_OneMinusEntity -> a RGB_ExactVertex -> a RGB_Vertex -> a RGB_LightingDiffuse -> a RGB_OneMinusVertex -> a RGB_Undefined -> (f:'RGBGen) -> a f 75'RGBGenCase :: (a : 'RGBGen->Type) -> ((b:'Wave) -> a (RGB_Wave b)) -> ((c:'Float) -> (d:'Float) -> (e:'Float) -> a (RGB_Const c d e)) -> a RGB_Identity -> a RGB_IdentityLighting -> a RGB_Entity -> a RGB_OneMinusEntity -> a RGB_ExactVertex -> a RGB_Vertex -> a RGB_LightingDiffuse -> a RGB_OneMinusVertex -> a RGB_Undefined -> (f:'RGBGen) -> a f
76match'RGBGen :: (a : Type->Type) -> a 'RGBGen -> (b:Type) -> a b -> a b 76match'RGBGen :: (a : Type->Type) -> a 'RGBGen -> (b:Type) -> a b -> a b
77'AlphaGen :: Type 77'AlphaGen :: Type
78A_Wave :: 'Wave->'AlphaGen 78A_Wave :: 'Wave->'AlphaGen
79A_Const :: 'Float->'AlphaGen 79A_Const :: 'Float->'AlphaGen
80A_Portal :: 'AlphaGen 80A_Portal :: 'AlphaGen
81A_Identity :: 'AlphaGen 81A_Identity :: 'AlphaGen
82A_Entity :: 'AlphaGen 82A_Entity :: 'AlphaGen
83A_OneMinusEntity :: 'AlphaGen 83A_OneMinusEntity :: 'AlphaGen
84A_Vertex :: 'AlphaGen 84A_Vertex :: 'AlphaGen
85A_LightingSpecular :: 'AlphaGen 85A_LightingSpecular :: 'AlphaGen
86A_OneMinusVertex :: 'AlphaGen 86A_OneMinusVertex :: 'AlphaGen
87'AlphaGenCase :: (a : 'AlphaGen->Type) -> ((b:'Wave) -> a (A_Wave b)) -> ((c:'Float) -> a (A_Const c)) -> a A_Portal -> a A_Identity -> a A_Entity -> a A_OneMinusEntity -> a A_Vertex -> a A_LightingSpecular -> a A_OneMinusVertex -> (d:'AlphaGen) -> a d 87'AlphaGenCase :: (a : 'AlphaGen->Type) -> ((b:'Wave) -> a (A_Wave b)) -> ((c:'Float) -> a (A_Const c)) -> a A_Portal -> a A_Identity -> a A_Entity -> a A_OneMinusEntity -> a A_Vertex -> a A_LightingSpecular -> a A_OneMinusVertex -> (d:'AlphaGen) -> a d
88match'AlphaGen :: (a : Type->Type) -> a 'AlphaGen -> (b:Type) -> a b -> a b 88match'AlphaGen :: (a : Type->Type) -> a 'AlphaGen -> (b:Type) -> a b -> a b
89'TCGen :: Type 89'TCGen :: Type
90TG_Base :: 'TCGen 90TG_Base :: 'TCGen
91TG_Lightmap :: 'TCGen 91TG_Lightmap :: 'TCGen
92TG_Environment :: 'TCGen 92TG_Environment :: 'TCGen
93TG_Vector :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'TCGen 93TG_Vector :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'TCGen
94TG_Undefined :: 'TCGen 94TG_Undefined :: 'TCGen
95'TCGenCase :: (a : 'TCGen->Type) -> a TG_Base -> a TG_Lightmap -> a TG_Environment -> ((b : 'Vec 3 'Float) -> (c : 'Vec 3 'Float) -> a (TG_Vector b c)) -> a TG_Undefined -> (d:'TCGen) -> a d 95'TCGenCase :: (a : 'TCGen->Type) -> a TG_Base -> a TG_Lightmap -> a TG_Environment -> ((b : 'Vec 3 'Float) -> (c : 'Vec 3 'Float) -> a (TG_Vector b c)) -> a TG_Undefined -> (d:'TCGen) -> a d
96match'TCGen :: (a : Type->Type) -> a 'TCGen -> (b:Type) -> a b -> a b 96match'TCGen :: (a : Type->Type) -> a 'TCGen -> (b:Type) -> a b -> a b
97'TCMod :: Type 97'TCMod :: Type
98TM_EntityTranslate :: 'TCMod 98TM_EntityTranslate :: 'TCMod
99TM_Rotate :: 'Float->'TCMod 99TM_Rotate :: 'Float->'TCMod
100TM_Scroll :: 'Float -> 'Float->'TCMod 100TM_Scroll :: 'Float -> 'Float->'TCMod
101TM_Scale :: 'Float -> 'Float->'TCMod 101TM_Scale :: 'Float -> 'Float->'TCMod
102TM_Stretch :: 'Wave->'TCMod 102TM_Stretch :: 'Wave->'TCMod
103TM_Transform :: 'Float -> 'Float -> 'Float -> 'Float -> 'Float -> 'Float->'TCMod 103TM_Transform :: 'Float -> 'Float -> 'Float -> 'Float -> 'Float -> 'Float->'TCMod
104TM_Turb :: 'Float -> 'Float -> 'Float -> 'Float->'TCMod 104TM_Turb :: 'Float -> 'Float -> 'Float -> 'Float->'TCMod
105'TCModCase :: (a : 'TCMod->Type) -> a TM_EntityTranslate -> ((b:'Float) -> a (TM_Rotate b)) -> ((c:'Float) -> (d:'Float) -> a (TM_Scroll c d)) -> ((e:'Float) -> (f:'Float) -> a (TM_Scale e f)) -> ((g:'Wave) -> a (TM_Stretch g)) -> ((h:'Float) -> (i:'Float) -> (j:'Float) -> (k:'Float) -> (l:'Float) -> (m:'Float) -> a (TM_Transform h i j k l m)) -> ((n:'Float) -> (o:'Float) -> (p:'Float) -> (q:'Float) -> a (TM_Turb n o p q)) -> (r:'TCMod) -> a r 105'TCModCase :: (a : 'TCMod->Type) -> a TM_EntityTranslate -> ((b:'Float) -> a (TM_Rotate b)) -> ((c:'Float) -> (d:'Float) -> a (TM_Scroll c d)) -> ((e:'Float) -> (f:'Float) -> a (TM_Scale e f)) -> ((g:'Wave) -> a (TM_Stretch g)) -> ((h:'Float) -> (i:'Float) -> (j:'Float) -> (k:'Float) -> (l:'Float) -> (m:'Float) -> a (TM_Transform h i j k l m)) -> ((n:'Float) -> (o:'Float) -> (p:'Float) -> (q:'Float) -> a (TM_Turb n o p q)) -> (r:'TCMod) -> a r
106match'TCMod :: (a : Type->Type) -> a 'TCMod -> (b:Type) -> a b -> a b 106match'TCMod :: (a : Type->Type) -> a 'TCMod -> (b:Type) -> a b -> a b
107'StageTexture :: Type 107'StageTexture :: Type
108ST_Map :: 'String->'StageTexture 108ST_Map :: 'String->'StageTexture
109ST_ClampMap :: 'String->'StageTexture 109ST_ClampMap :: 'String->'StageTexture
110ST_AnimMap :: 'Float -> 'List 'String -> 'StageTexture 110ST_AnimMap :: 'Float -> 'List 'String -> 'StageTexture
111ST_Lightmap :: 'StageTexture 111ST_Lightmap :: 'StageTexture
112ST_WhiteImage :: 'StageTexture 112ST_WhiteImage :: 'StageTexture
113'StageTextureCase :: (a : 'StageTexture->Type) -> ((b:'String) -> a (ST_Map b)) -> ((c:'String) -> a (ST_ClampMap c)) -> ((d:'Float) -> (e : 'List 'String) -> a (ST_AnimMap d e)) -> a ST_Lightmap -> a ST_WhiteImage -> (f:'StageTexture) -> a f 113'StageTextureCase :: (a : 'StageTexture->Type) -> ((b:'String) -> a (ST_Map b)) -> ((c:'String) -> a (ST_ClampMap c)) -> ((d:'Float) -> (e : 'List 'String) -> a (ST_AnimMap d e)) -> a ST_Lightmap -> a ST_WhiteImage -> (f:'StageTexture) -> a f
114match'StageTexture :: (a : Type->Type) -> a 'StageTexture -> (b:Type) -> a b -> a b 114match'StageTexture :: (a : Type->Type) -> a 'StageTexture -> (b:Type) -> a b -> a b
115'AlphaFunction :: Type 115'AlphaFunction :: Type
116A_Gt0 :: 'AlphaFunction 116A_Gt0 :: 'AlphaFunction
117A_Lt128 :: 'AlphaFunction 117A_Lt128 :: 'AlphaFunction
118A_Ge128 :: 'AlphaFunction 118A_Ge128 :: 'AlphaFunction
119'AlphaFunctionCase :: (a : 'AlphaFunction->Type) -> a A_Gt0 -> a A_Lt128 -> a A_Ge128 -> (b:'AlphaFunction) -> a b 119'AlphaFunctionCase :: (a : 'AlphaFunction->Type) -> a A_Gt0 -> a A_Lt128 -> a A_Ge128 -> (b:'AlphaFunction) -> a b
120match'AlphaFunction :: (a : Type->Type) -> a 'AlphaFunction -> (b:Type) -> a b -> a b 120match'AlphaFunction :: (a : Type->Type) -> a 'AlphaFunction -> (b:Type) -> a b -> a b
121'DepthFunction :: Type 121'DepthFunction :: Type
122D_Equal :: 'DepthFunction 122D_Equal :: 'DepthFunction
123D_Lequal :: 'DepthFunction 123D_Lequal :: 'DepthFunction
124'DepthFunctionCase :: (a : 'DepthFunction->Type) -> a D_Equal -> a D_Lequal -> (b:'DepthFunction) -> a b 124'DepthFunctionCase :: (a : 'DepthFunction->Type) -> a D_Equal -> a D_Lequal -> (b:'DepthFunction) -> a b
125match'DepthFunction :: (a : Type->Type) -> a 'DepthFunction -> (b:Type) -> a b -> a b 125match'DepthFunction :: (a : Type->Type) -> a 'DepthFunction -> (b:Type) -> a b -> a b
126'StageAttrs :: Type 126'StageAttrs :: Type
127StageAttrs :: 'Maybe ('Blending', 'Blending') -> 'RGBGen -> 'AlphaGen -> 'TCGen -> 'List 'TCMod -> 'StageTexture -> 'Bool -> 'DepthFunction -> 'Maybe 'AlphaFunction -> 'Bool -> 'String->'StageAttrs 127StageAttrs :: 'Maybe ('Blending', 'Blending') -> 'RGBGen -> 'AlphaGen -> 'TCGen -> 'List 'TCMod -> 'StageTexture -> 'Bool -> 'DepthFunction -> 'Maybe 'AlphaFunction -> 'Bool -> 'String->'StageAttrs
128'StageAttrsCase :: (a : 'StageAttrs->Type) -> ((b : 'Maybe ('Blending', 'Blending')) -> (c:'RGBGen) -> (d:'AlphaGen) -> (e:'TCGen) -> (f : 'List 'TCMod) -> (g:'StageTexture) -> (h:'Bool) -> (i:'DepthFunction) -> (j : 'Maybe 'AlphaFunction) -> (k:'Bool) -> (l:'String) -> a (StageAttrs b c d e f g h i j k l)) -> (m:'StageAttrs) -> a m 128'StageAttrsCase :: (a : 'StageAttrs->Type) -> ((b : 'Maybe ('Blending', 'Blending')) -> (c:'RGBGen) -> (d:'AlphaGen) -> (e:'TCGen) -> (f : 'List 'TCMod) -> (g:'StageTexture) -> (h:'Bool) -> (i:'DepthFunction) -> (j : 'Maybe 'AlphaFunction) -> (k:'Bool) -> (l:'String) -> a (StageAttrs b c d e f g h i j k l)) -> (m:'StageAttrs) -> a m
129match'StageAttrs :: (a : Type->Type) -> a 'StageAttrs -> (b:Type) -> a b -> a b 129match'StageAttrs :: (a : Type->Type) -> a 'StageAttrs -> (b:Type) -> a b -> a b
130saBlend :: 'StageAttrs -> 'Maybe ('Blending', 'Blending') 130saBlend :: 'StageAttrs -> 'Maybe ('Blending', 'Blending')
131saRGBGen :: 'StageAttrs->'RGBGen 131saRGBGen :: 'StageAttrs->'RGBGen
132saAlphaGen :: 'StageAttrs->'AlphaGen 132saAlphaGen :: 'StageAttrs->'AlphaGen
133saTCGen :: 'StageAttrs->'TCGen 133saTCGen :: 'StageAttrs->'TCGen
134saTCMod :: 'StageAttrs -> 'List 'TCMod 134saTCMod :: 'StageAttrs -> 'List 'TCMod
135saTexture :: 'StageAttrs->'StageTexture 135saTexture :: 'StageAttrs->'StageTexture
136saDepthWrite :: 'StageAttrs->'Bool 136saDepthWrite :: 'StageAttrs->'Bool
137saDepthFunc :: 'StageAttrs->'DepthFunction 137saDepthFunc :: 'StageAttrs->'DepthFunction
138saAlphaFunc :: 'StageAttrs -> 'Maybe 'AlphaFunction 138saAlphaFunc :: 'StageAttrs -> 'Maybe 'AlphaFunction
139saDepthMaskExplicit :: 'StageAttrs->'Bool 139saDepthMaskExplicit :: 'StageAttrs->'Bool
140saTextureUniform :: 'StageAttrs->'String 140saTextureUniform :: 'StageAttrs->'String
141defaultStageAttrs :: 'StageAttrs 141defaultStageAttrs :: 'StageAttrs
142'CommonAttrs :: Type 142'CommonAttrs :: Type
143CommonAttrs :: () -> () -> 'Bool -> 'Float -> 'Bool -> 'Bool -> 'CullType -> 'List 'Deform -> 'Bool -> 'Bool -> 'List 'StageAttrs -> 'Bool->'CommonAttrs 143CommonAttrs :: () -> () -> 'Bool -> 'Float -> 'Bool -> 'Bool -> 'CullType -> 'List 'Deform -> 'Bool -> 'Bool -> 'List 'StageAttrs -> 'Bool->'CommonAttrs
144'CommonAttrsCase :: (a : 'CommonAttrs->Type) -> ((b:()) -> (c:()) -> (d:'Bool) -> (e:'Float) -> (f:'Bool) -> (g:'Bool) -> (h:'CullType) -> (i : 'List 'Deform) -> (j:'Bool) -> (k:'Bool) -> (l : 'List 'StageAttrs) -> (m:'Bool) -> a (CommonAttrs b c d e f g h i j k l m)) -> (n:'CommonAttrs) -> a n 144'CommonAttrsCase :: (a : 'CommonAttrs->Type) -> ((b:()) -> (c:()) -> (d:'Bool) -> (e:'Float) -> (f:'Bool) -> (g:'Bool) -> (h:'CullType) -> (i : 'List 'Deform) -> (j:'Bool) -> (k:'Bool) -> (l : 'List 'StageAttrs) -> (m:'Bool) -> a (CommonAttrs b c d e f g h i j k l m)) -> (n:'CommonAttrs) -> a n
145match'CommonAttrs :: (a : Type->Type) -> a 'CommonAttrs -> (b:Type) -> a b -> a b 145match'CommonAttrs :: (a : Type->Type) -> a 'CommonAttrs -> (b:Type) -> a b -> a b
146caSkyParms :: 'CommonAttrs->() 146caSkyParms :: 'CommonAttrs->()
147caFogParms :: 'CommonAttrs->() 147caFogParms :: 'CommonAttrs->()
148caPortal :: 'CommonAttrs->'Bool 148caPortal :: 'CommonAttrs->'Bool
149caSort :: 'CommonAttrs->'Float 149caSort :: 'CommonAttrs->'Float
150caEntityMergable :: 'CommonAttrs->'Bool 150caEntityMergable :: 'CommonAttrs->'Bool
151caFogOnly :: 'CommonAttrs->'Bool 151caFogOnly :: 'CommonAttrs->'Bool
152caCull :: 'CommonAttrs->'CullType 152caCull :: 'CommonAttrs->'CullType
153caDeformVertexes :: 'CommonAttrs -> 'List 'Deform 153caDeformVertexes :: 'CommonAttrs -> 'List 'Deform
154caNoMipMaps :: 'CommonAttrs->'Bool 154caNoMipMaps :: 'CommonAttrs->'Bool
155caPolygonOffset :: 'CommonAttrs->'Bool 155caPolygonOffset :: 'CommonAttrs->'Bool
156caStages :: 'CommonAttrs -> 'List 'StageAttrs 156caStages :: 'CommonAttrs -> 'List 'StageAttrs
157caIsSky :: 'CommonAttrs->'Bool 157caIsSky :: 'CommonAttrs->'Bool
158defaultCommonAttrs :: 'CommonAttrs 158defaultCommonAttrs :: 'CommonAttrs
159------------ tooltips 159------------ tooltips
160testdata/Material.lc 7:18-7:23 Type 160testdata/Material.lc 7:18-7:23 Type
161testdata/Material.lc 8:1-8:14 Float 161testdata/Material.lc 8:1-8:14 Float
diff --git a/testdata/Prelude.out b/testdata/Prelude.out
index 631f7aea..99401d65 100644
--- a/testdata/Prelude.out
+++ b/testdata/Prelude.out
@@ -1,176 +1,176 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3const :: {a} -> {b} -> a -> b->a 3const :: {a} -> {b} -> a -> b->a
4otherwise :: 'Bool 4otherwise :: 'Bool
5& :: {a} -> {b} -> a -> (a->b)->b 5& :: {a} -> {b} -> a -> (a->b)->b
6$ :: {a} -> {b} -> (a->b) -> a->b 6$ :: {a} -> {b} -> (a->b) -> a->b
7. :: {a} -> {b} -> {c} -> (b->c) -> (a->b) -> a->c 7. :: {a} -> {b} -> {c} -> (b->c) -> (a->b) -> a->c
8uncurry :: {a} -> {b} -> {c} -> (a -> c->b) -> (a, c)->b 8uncurry :: {a} -> {b} -> {c} -> (a -> c->b) -> (a, c)->b
9*** :: {a} -> {b} -> {c} -> {d} -> (a->c) -> (b->d) -> (a, b)->(c, d) 9*** :: {a} -> {b} -> {c} -> {d} -> (a->c) -> (b->d) -> (a, b)->(c, d)
10pi :: 'Float 10pi :: 'Float
11zip :: {a} -> {b} -> 'List a -> 'List b -> 'List (a, b) 11zip :: {a} -> {b} -> 'List a -> 'List b -> 'List (a, b)
12unzip :: {a} -> {b} -> 'List (a, b) -> ('List a, 'List b) 12unzip :: {a} -> {b} -> 'List (a, b) -> ('List a, 'List b)
13filter :: {a} -> (a->'Bool) -> 'List a -> 'List a 13filter :: {a} -> (a->'Bool) -> 'List a -> 'List a
14tail :: {a} -> 'List a -> 'List a 14tail :: {a} -> 'List a -> 'List a
15pairs :: {a} -> 'List a -> 'List (a, a) 15pairs :: {a} -> 'List a -> 'List (a, a)
16foldl' :: {a} -> {b} -> (a -> b->a) -> a -> 'List b -> a 16foldl' :: {a} -> {b} -> (a -> b->a) -> a -> 'List b -> a
17foldr1 :: {a} -> (a -> a->a) -> 'List a -> a 17foldr1 :: {a} -> (a -> a->a) -> 'List a -> a
18split :: {a} -> 'List a -> ('List a, 'List a) 18split :: {a} -> 'List a -> ('List a, 'List a)
19mergeBy :: {a} -> (a -> a->'Ordering) -> 'List a -> 'List a -> 'List a 19mergeBy :: {a} -> (a -> a->'Ordering) -> 'List a -> 'List a -> 'List a
20sortBy :: {a} -> (a -> a->'Ordering) -> 'List a -> 'List a 20sortBy :: {a} -> (a -> a->'Ordering) -> 'List a -> 'List a
21iterate :: {a} -> (a->a) -> a -> 'List a 21iterate :: {a} -> (a->a) -> a -> 'List a
22fst :: {a} -> {b} -> (a, b)->a 22fst :: {a} -> {b} -> (a, b)->a
23snd :: {a} -> {b} -> (a, b)->b 23snd :: {a} -> {b} -> (a, b)->b
24||| :: 'Bool -> 'Bool->'Bool 24||| :: 'Bool -> 'Bool->'Bool
25&&& :: 'Bool -> 'Bool->'Bool 25&&& :: 'Bool -> 'Bool->'Bool
26'RecItem :: Type 26'RecItem :: Type
27RecItem :: 'String -> Type->'RecItem 27RecItem :: 'String -> Type->'RecItem
28'RecItemCase :: (a : 'RecItem->Type) -> ((b:'String) -> (c:Type) -> a (RecItem b c)) -> (d:'RecItem) -> a d 28'RecItemCase :: (a : 'RecItem->Type) -> ((b:'String) -> (c:Type) -> a (RecItem b c)) -> (d:'RecItem) -> a d
29match'RecItem :: (a : Type->Type) -> a 'RecItem -> (b:Type) -> a b -> a b 29match'RecItem :: (a : Type->Type) -> a 'RecItem -> (b:Type) -> a b -> a b
30recItemType :: 'RecItem->Type 30recItemType :: 'RecItem->Type
31'RecordC :: 'List 'RecItem -> Type 31'RecordC :: 'List 'RecItem -> Type
32RecordCons :: {a : 'List 'RecItem} -> 'HList (map 'RecItem Type recItemType a) -> 'RecordC a 32RecordCons :: {a : 'List 'RecItem} -> 'HList (map 'RecItem Type recItemType a) -> 'RecordC a
33'RecordCCase :: {a : 'List 'RecItem} -> (b : 'RecordC a -> Type) -> ((c : 'HList (map 'RecItem Type recItemType a)) -> b (RecordCons c)) -> (d : 'RecordC a) -> b d 33'RecordCCase :: {a : 'List 'RecItem} -> (b : 'RecordC a -> Type) -> ((c : 'HList (map 'RecItem Type recItemType a)) -> b (RecordCons c)) -> (d : 'RecordC a) -> b d
34match'RecordC :: (a : Type->Type) -> ((b : 'List 'RecItem) -> a ('RecordC b)) -> (c:Type) -> a c -> a c 34match'RecordC :: (a : Type->Type) -> ((b : 'List 'RecItem) -> a ('RecordC b)) -> (c:Type) -> a c -> a c
35isKeyC :: 'String -> Type -> 'List 'RecItem -> Type 35isKeyC :: 'String -> Type -> 'List 'RecItem -> Type
36fstTup :: {a} -> {b : 'List Type} -> 'HList (Cons a b) -> a 36fstTup :: {a} -> {b : 'List Type} -> 'HList (Cons a b) -> a
37sndTup :: {a} -> {b : 'List Type} -> 'HList (Cons a b) -> 'HList b 37sndTup :: {a} -> {b : 'List Type} -> 'HList (Cons a b) -> 'HList b
38project :: {a} -> {b : 'List 'RecItem} -> (c:'String) -> {_ : isKeyC c a b} -> 'RecordC b -> a 38project :: {a} -> {b : 'List 'RecItem} -> (c:'String) -> {_ : isKeyC c a b} -> 'RecordC b -> a
39rgb :: 'Float -> 'Float -> 'Float -> 'VecS 'Float 4 39rgb :: 'Float -> 'Float -> 'Float -> 'VecS 'Float 4
40black :: 'VecS 'Float 4 40black :: 'VecS 'Float 4
41gray :: 'VecS 'Float 4 41gray :: 'VecS 'Float 4
42silver :: 'VecS 'Float 4 42silver :: 'VecS 'Float 4
43white :: 'VecS 'Float 4 43white :: 'VecS 'Float 4
44maroon :: 'VecS 'Float 4 44maroon :: 'VecS 'Float 4
45red :: 'VecS 'Float 4 45red :: 'VecS 'Float 4
46olive :: 'VecS 'Float 4 46olive :: 'VecS 'Float 4
47yellow :: 'VecS 'Float 4 47yellow :: 'VecS 'Float 4
48green :: 'VecS 'Float 4 48green :: 'VecS 'Float 4
49lime :: 'VecS 'Float 4 49lime :: 'VecS 'Float 4
50teal :: 'VecS 'Float 4 50teal :: 'VecS 'Float 4
51aqua :: 'VecS 'Float 4 51aqua :: 'VecS 'Float 4
52navy :: 'VecS 'Float 4 52navy :: 'VecS 'Float 4
53blue :: 'VecS 'Float 4 53blue :: 'VecS 'Float 4
54purple :: 'VecS 'Float 4 54purple :: 'VecS 'Float 4
55fuchsia :: 'VecS 'Float 4 55fuchsia :: 'VecS 'Float 4
56colorImage1 :: {a:'Nat} -> {b} -> {c} -> {_ : 'Num b} -> {_ : c ~ 'VecScalar a b} -> c -> 'Image 1 (Color c) 56colorImage1 :: {a:'Nat} -> {b} -> {c} -> {_ : 'Num b} -> {_ : c ~ 'VecScalar a b} -> c -> 'Image 1 (Color c)
57colorImage2 :: {a:'Nat} -> {b} -> {c} -> {_ : 'Num b} -> {_ : c ~ 'VecScalar a b} -> c -> 'Image 2 (Color c) 57colorImage2 :: {a:'Nat} -> {b} -> {c} -> {_ : 'Num b} -> {_ : c ~ 'VecScalar a b} -> c -> 'Image 2 (Color c)
58depthImage1 :: 'Float -> 'Image 1 Depth 58depthImage1 :: 'Float -> 'Image 1 Depth
59v3FToV4F :: 'Vec 3 'Float -> 'VecS 'Float 4 59v3FToV4F :: 'Vec 3 'Float -> 'VecS 'Float 4
60radians :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 60radians :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
61degrees :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 61degrees :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
62sin :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 62sin :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
63cos :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 63cos :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
64tan :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 64tan :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
65sinh :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 65sinh :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
66cosh :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 66cosh :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
67tanh :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 67tanh :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
68asin :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 68asin :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
69asinh :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 69asinh :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
70acos :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 70acos :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
71acosh :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 71acosh :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
72atan :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 72atan :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
73atanh :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 73atanh :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
74atan2 :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->a 74atan2 :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->a
75pow :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->a 75pow :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->a
76exp :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 76exp :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
77log :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 77log :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
78exp2 :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 78exp2 :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
79log2 :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 79log2 :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
80sqrt :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 80sqrt :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
81inversesqrt :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 81inversesqrt :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
82abs :: {a} -> {b} -> {c:'Nat} -> {_ : 'Signed a} -> {_ : b ~ 'VecScalar c a} -> b->b 82abs :: {a} -> {b} -> {c:'Nat} -> {_ : 'Signed a} -> {_ : b ~ 'VecScalar c a} -> b->b
83sign :: {a} -> {b} -> {c:'Nat} -> {_ : 'Signed a} -> {_ : b ~ 'VecScalar c a} -> b->b 83sign :: {a} -> {b} -> {c:'Nat} -> {_ : 'Signed a} -> {_ : b ~ 'VecScalar c a} -> b->b
84floor :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 84floor :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
85trunc :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 85trunc :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
86round :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 86round :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
87roundEven :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 87roundEven :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
88ceil :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 88ceil :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
89fract :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 89fract :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
90mod :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 90mod :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
91min :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 91min :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
92max :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 92max :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
93modF :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->(a, a) 93modF :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->(a, a)
94clamp :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b -> b->b 94clamp :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> b -> b->b
95clampS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> a -> a->b 95clampS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Num a} -> {_ : b ~ 'VecScalar c a} -> b -> a -> a->b
96mix :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> a->a 96mix :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> a->a
97mixS :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> 'Float->a 97mixS :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> 'Float->a
98mixB :: {a} -> {b:'Nat} -> {c} -> {_ : a ~ 'VecScalar b 'Float} -> {_ : c ~ 'VecScalar b 'Bool} -> a -> a -> c->a 98mixB :: {a} -> {b:'Nat} -> {c} -> {_ : a ~ 'VecScalar b 'Float} -> {_ : c ~ 'VecScalar b 'Bool} -> a -> a -> c->a
99step :: {a} -> {b:'Nat} -> {_ : a ~ 'VecS 'Float b} -> a -> a->a 99step :: {a} -> {b:'Nat} -> {_ : a ~ 'VecS 'Float b} -> a -> a->a
100stepS :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> 'Float -> a->a 100stepS :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> 'Float -> a->a
101smoothstep :: {a} -> {b:'Nat} -> {_ : a ~ 'VecS 'Float b} -> a -> a -> a->a 101smoothstep :: {a} -> {b:'Nat} -> {_ : a ~ 'VecS 'Float b} -> a -> a -> a->a
102smoothstepS :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> 'Float -> 'Float -> a->a 102smoothstepS :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> 'Float -> 'Float -> a->a
103isNan :: {a} -> {b:'Nat} -> {c} -> {_ : a ~ 'VecScalar b 'Float} -> {_ : c ~ 'VecScalar b 'Bool} -> a->c 103isNan :: {a} -> {b:'Nat} -> {c} -> {_ : a ~ 'VecScalar b 'Float} -> {_ : c ~ 'VecScalar b 'Bool} -> a->c
104isInf :: {a} -> {b:'Nat} -> {c} -> {_ : a ~ 'VecScalar b 'Float} -> {_ : c ~ 'VecScalar b 'Bool} -> a->c 104isInf :: {a} -> {b:'Nat} -> {c} -> {_ : a ~ 'VecScalar b 'Float} -> {_ : c ~ 'VecScalar b 'Bool} -> a->c
105dFdx :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 105dFdx :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
106dFdy :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 106dFdy :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
107fWidth :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 107fWidth :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
108noise1 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Float 108noise1 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Float
109noise2 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Vec 2 'Float 109noise2 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Vec 2 'Float
110noise3 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Vec 3 'Float 110noise3 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Vec 3 'Float
111noise4 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Vec 4 'Float 111noise4 :: {a:'Nat} -> 'VecScalar a 'Float -> 'Vec 4 'Float
112length :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->'Float 112length :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->'Float
113distance :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->'Float 113distance :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->'Float
114dot :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->'Float 114dot :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->'Float
115cross :: {a} -> {_ : a ~ 'VecS 'Float 3} -> a -> a->a 115cross :: {a} -> {_ : a ~ 'VecS 'Float 3} -> a -> a->a
116normalize :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a 116normalize :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a->a
117faceforward :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> a->a 117faceforward :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> a->a
118reflect :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->a 118reflect :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a->a
119refract :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> a->a 119refract :: {a} -> {b:'Nat} -> {_ : a ~ 'VecScalar b 'Float} -> a -> a -> a->a
120transpose :: {a:'Nat} -> {b:'Nat} -> {c} -> 'Mat a b c -> 'Mat b a c 120transpose :: {a:'Nat} -> {b:'Nat} -> {c} -> 'Mat a b c -> 'Mat b a c
121det :: {a:'Nat} -> {b} -> 'Mat a a b -> 'Float 121det :: {a:'Nat} -> {b} -> 'Mat a a b -> 'Float
122inv :: {a:'Nat} -> {b} -> 'Mat a a b -> 'Mat a a b 122inv :: {a:'Nat} -> {b} -> 'Mat a a b -> 'Mat a a b
123outer :: {a:'Nat} -> {b} -> {c:'Nat} -> 'Vec a b -> 'Vec c b -> 'Mat c a b 123outer :: {a:'Nat} -> {b} -> {c:'Nat} -> 'Vec a b -> 'Vec c b -> 'Mat c a b
124bAnd :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 124bAnd :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
125bOr :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 125bOr :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
126bXor :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b 126bXor :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> b->b
127bNot :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b->b 127bNot :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b->b
128bAndS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b 128bAndS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b
129bOrS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b 129bOrS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b
130bXorS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b 130bXorS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> a->b
131shiftL :: {a} -> {b} -> {c:'Nat} -> {d} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> {_ : d ~ 'VecScalar c 'Word} -> b -> d->b 131shiftL :: {a} -> {b} -> {c:'Nat} -> {d} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> {_ : d ~ 'VecScalar c 'Word} -> b -> d->b
132shiftR :: {a} -> {b} -> {c:'Nat} -> {d} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> {_ : d ~ 'VecScalar c 'Word} -> b -> d->b 132shiftR :: {a} -> {b} -> {c:'Nat} -> {d} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> {_ : d ~ 'VecScalar c 'Word} -> b -> d->b
133shiftLS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> 'Word->b 133shiftLS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> 'Word->b
134shiftRS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> 'Word->b 134shiftRS :: {a} -> {b} -> {c:'Nat} -> {_ : 'Integral a} -> {_ : b ~ 'VecScalar c a} -> b -> 'Word->b
135floatBitsToInt :: {a:'Nat} -> 'VecScalar a 'Float -> 'VecScalar a 'Int 135floatBitsToInt :: {a:'Nat} -> 'VecScalar a 'Float -> 'VecScalar a 'Int
136floatBitsToWord :: {a:'Nat} -> 'VecScalar a 'Float -> 'VecScalar a 'Word 136floatBitsToWord :: {a:'Nat} -> 'VecScalar a 'Float -> 'VecScalar a 'Word
137intBitsToFloat :: {a:'Nat} -> 'VecScalar a 'Int -> 'VecScalar a 'Float 137intBitsToFloat :: {a:'Nat} -> 'VecScalar a 'Int -> 'VecScalar a 'Float
138wordBitsToFloat :: {a:'Nat} -> 'VecScalar a 'Word -> 'VecScalar a 'Float 138wordBitsToFloat :: {a:'Nat} -> 'VecScalar a 'Word -> 'VecScalar a 'Float
139+ :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> a->a 139+ :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> a->a
140- :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> a->a 140- :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> a->a
141* :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> a->a 141* :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> a->a
142/ :: {a} -> {b:'Nat} -> {_ : 'Num a} -> 'VecScalar b a -> 'VecScalar b a -> 'VecScalar b a 142/ :: {a} -> {b:'Nat} -> {_ : 'Num a} -> 'VecScalar b a -> 'VecScalar b a -> 'VecScalar b a
143% :: {a} -> {b:'Nat} -> {_ : 'Num a} -> 'VecScalar b a -> 'VecScalar b a -> 'VecScalar b a 143% :: {a} -> {b:'Nat} -> {_ : 'Num a} -> 'VecScalar b a -> 'VecScalar b a -> 'VecScalar b a
144neg :: {a} -> {_ : 'Signed ('MatVecScalarElem a)} -> a->a 144neg :: {a} -> {_ : 'Signed ('MatVecScalarElem a)} -> a->a
145/= :: {a} -> a -> a->'Bool 145/= :: {a} -> a -> a->'Bool
146< :: {a:'Nat} -> {b} -> {_ : 'Num b} -> 'VecScalar a b -> 'VecScalar a b -> 'VecScalar a 'Bool 146< :: {a:'Nat} -> {b} -> {_ : 'Num b} -> 'VecScalar a b -> 'VecScalar a b -> 'VecScalar a 'Bool
147<= :: {a:'Nat} -> {b} -> {_ : 'Num b} -> 'VecScalar a b -> 'VecScalar a b -> 'VecScalar a 'Bool 147<= :: {a:'Nat} -> {b} -> {_ : 'Num b} -> 'VecScalar a b -> 'VecScalar a b -> 'VecScalar a 'Bool
148>= :: {a:'Nat} -> {b} -> {_ : 'Num b} -> 'VecScalar a b -> 'VecScalar a b -> 'VecScalar a 'Bool 148>= :: {a:'Nat} -> {b} -> {_ : 'Num b} -> 'VecScalar a b -> 'VecScalar a b -> 'VecScalar a 'Bool
149> :: {a:'Nat} -> {b} -> {_ : 'Num b} -> 'VecScalar a b -> 'VecScalar a b -> 'VecScalar a 'Bool 149> :: {a:'Nat} -> {b} -> {_ : 'Num b} -> 'VecScalar a b -> 'VecScalar a b -> 'VecScalar a 'Bool
150&& :: 'Bool -> 'Bool->'Bool 150&& :: 'Bool -> 'Bool->'Bool
151|| :: 'Bool -> 'Bool->'Bool 151|| :: 'Bool -> 'Bool->'Bool
152xor :: 'Bool -> 'Bool->'Bool 152xor :: 'Bool -> 'Bool->'Bool
153not :: {a:'Nat} -> 'VecScalar a 'Bool -> 'VecScalar a 'Bool 153not :: {a:'Nat} -> 'VecScalar a 'Bool -> 'VecScalar a 'Bool
154any :: {a:'Nat} -> 'VecScalar a 'Bool -> 'Bool 154any :: {a:'Nat} -> 'VecScalar a 'Bool -> 'Bool
155all :: {a:'Nat} -> 'VecScalar a 'Bool -> 'Bool 155all :: {a:'Nat} -> 'VecScalar a 'Bool -> 'Bool
156.*. :: {a:'Nat} -> {b:'Nat} -> {c} -> {d:'Nat} -> 'Mat a b c -> 'Mat b d c -> 'Mat a d c 156.*. :: {a:'Nat} -> {b:'Nat} -> {c} -> {d:'Nat} -> 'Mat a b c -> 'Mat b d c -> 'Mat a d c
157*. :: {a:'Nat} -> {b:'Nat} -> {c} -> 'Mat a b c -> 'VecS c b -> 'Vec a c 157*. :: {a:'Nat} -> {b:'Nat} -> {c} -> 'Mat a b c -> 'VecS c b -> 'Vec a c
158.* :: {a:'Nat} -> {b} -> {c:'Nat} -> 'VecS b a -> 'Mat a c b -> 'Vec c b 158.* :: {a:'Nat} -> {b} -> {c:'Nat} -> 'VecS b a -> 'Mat a c b -> 'Vec c b
159+! :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> 'MatVecScalarElem a -> a 159+! :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> 'MatVecScalarElem a -> a
160-! :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> 'MatVecScalarElem a -> a 160-! :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> 'MatVecScalarElem a -> a
161*! :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> 'MatVecScalarElem a -> a 161*! :: {a} -> {_ : 'Num ('MatVecScalarElem a)} -> a -> 'MatVecScalarElem a -> a
162/! :: {a} -> {b:'Nat} -> {_ : 'Num a} -> 'VecScalar b a -> a -> 'VecScalar b a 162/! :: {a} -> {b:'Nat} -> {_ : 'Num a} -> 'VecScalar b a -> a -> 'VecScalar b a
163%! :: {a} -> {b:'Nat} -> {_ : 'Num a} -> 'VecScalar b a -> a -> 'VecScalar b a 163%! :: {a} -> {b:'Nat} -> {_ : 'Num a} -> 'VecScalar b a -> a -> 'VecScalar b a
164perspective :: 'Float -> 'Float -> 'Float -> 'Float -> 'Mat 4 4 'Float 164perspective :: 'Float -> 'Float -> 'Float -> 'Float -> 'Mat 4 4 'Float
165rotMatrixZ :: 'VecScalar 1 'Float -> 'Mat 4 4 'Float 165rotMatrixZ :: 'VecScalar 1 'Float -> 'Mat 4 4 'Float
166rotMatrixY :: 'VecScalar 1 'Float -> 'Mat 4 4 'Float 166rotMatrixY :: 'VecScalar 1 'Float -> 'Mat 4 4 'Float
167rotMatrixX :: 'VecScalar 1 'Float -> 'Mat 4 4 'Float 167rotMatrixX :: 'VecScalar 1 'Float -> 'Mat 4 4 'Float
168rotationEuler :: 'Float -> 'Float -> 'Float -> 'Mat 4 4 'Float 168rotationEuler :: 'Float -> 'Float -> 'Float -> 'Mat 4 4 'Float
169translateBefore4 :: 'Vec 3 'Float -> 'Mat 4 4 'Float 169translateBefore4 :: 'Vec 3 'Float -> 'Mat 4 4 'Float
170lookat :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'Vec 3 'Float -> 'Mat 4 4 'Float 170lookat :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'Vec 3 'Float -> 'Mat 4 4 'Float
171scale :: 'Float -> 'VecS 'Float 4 -> 'VecS 'Float 4 171scale :: 'Float -> 'VecS 'Float 4 -> 'VecS 'Float 4
172fromTo :: 'Float -> 'Float -> 'List 'Float 172fromTo :: 'Float -> 'Float -> 'List 'Float
173!! :: {a} -> 'List a -> 'Int->a 173!! :: {a} -> 'List a -> 'Int->a
174------------ tooltips 174------------ tooltips
175testdata/Prelude.lc 16:1-16:6 {a} -> {b} -> a -> b->a 175testdata/Prelude.lc 16:1-16:6 {a} -> {b} -> a -> b->a
176testdata/Prelude.lc 16:13-16:14 d_ 176testdata/Prelude.lc 16:13-16:14 d_
diff --git a/testdata/SampleMaterial.out b/testdata/SampleMaterial.out
index 53ea5d71..878fd833 100644
--- a/testdata/SampleMaterial.out
+++ b/testdata/SampleMaterial.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3sampleMaterial :: 'List ('String, 'CommonAttrs) 3sampleMaterial :: 'List ('String, 'CommonAttrs)
4------------ tooltips 4------------ tooltips
5testdata/SampleMaterial.lc 3:1-3:15 List (String, CommonAttrs) 5testdata/SampleMaterial.lc 3:1-3:15 List (String, CommonAttrs)
6testdata/SampleMaterial.lc 4:3-2183:4 List (String, CommonAttrs) 6testdata/SampleMaterial.lc 4:3-2183:4 List (String, CommonAttrs)
diff --git a/testdata/adhoc.reject.out b/testdata/adhoc.reject.out
index 730a6f84..7322b12d 100644
--- a/testdata/adhoc.reject.out
+++ b/testdata/adhoc.reject.out
@@ -4,10 +4,10 @@ x = one :: Vec 4 A
4 ^^^ 4 ^^^
5 5
6------------ trace 6------------ trace
7'A :: Type 7'A :: Type
8A :: 'A 8A :: 'A
9'ACase :: (a : 'A->Type) -> a A -> (b:'A) -> a b 9'ACase :: (a : 'A->Type) -> a A -> (b:'A) -> a b
10match'A :: (a : Type->Type) -> a 'A -> (b:Type) -> a b -> a b 10match'A :: (a : Type->Type) -> a 'A -> (b:Type) -> a b -> a b
11!type error: no instance of 'Component on ??? 11!type error: no instance of 'Component on ???
12in testdata/adhoc.reject.lc:4:5: 12in testdata/adhoc.reject.lc:4:5:
13x = one :: Vec 4 A 13x = one :: Vec 4 A
diff --git a/testdata/ambig.out b/testdata/ambig.out
index bf421b4d..04e30108 100644
--- a/testdata/ambig.out
+++ b/testdata/ambig.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3h :: {a} -> {b} -> {c} -> {d} -> (b -> d->c) -> (b, d) -> a->c 3h :: {a} -> {b} -> {c} -> {d} -> (b -> d->c) -> (b, d) -> a->c
4------------ tooltips 4------------ tooltips
5testdata/ambig.lc 4:1-4:2 {a} -> {b} -> {c} -> {d} -> (b -> d->c) -> (b, d) -> a->c 5testdata/ambig.lc 4:1-4:2 {a} -> {b} -> {c} -> {d} -> (b -> d->c) -> (b, d) -> a->c
6testdata/ambig.lc 4:11-4:12 c_ 6testdata/ambig.lc 4:11-4:12 c_
diff --git a/testdata/complex.out b/testdata/complex.out
index 7c33a18a..59a9beaa 100644
--- a/testdata/complex.out
+++ b/testdata/complex.out
@@ -1,27 +1,27 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3'Repr :: Type 3'Repr :: Type
4Normal :: 'Repr 4Normal :: 'Repr
5Polar :: 'Repr 5Polar :: 'Repr
6'ReprCase :: (a : 'Repr->Type) -> a Normal -> a Polar -> (b:'Repr) -> a b 6'ReprCase :: (a : 'Repr->Type) -> a Normal -> a Polar -> (b:'Repr) -> a b
7match'Repr :: (a : Type->Type) -> a 'Repr -> (b:Type) -> a b -> a b 7match'Repr :: (a : Type->Type) -> a 'Repr -> (b:Type) -> a b -> a b
8'Complex :: 'Repr->Type 8'Complex :: 'Repr->Type
9Complex :: {a:'Repr} -> 'Float -> 'Float -> 'Complex a 9Complex :: {a:'Repr} -> 'Float -> 'Float -> 'Complex a
10'ComplexCase :: (a : (b:'Repr) -> 'Complex b -> Type) -> ({c:'Repr} -> (d:'Float) -> (e:'Float) -> a c (Complex c d e)) -> {f:'Repr} -> (g : 'Complex f) -> a f g 10'ComplexCase :: (a : (b:'Repr) -> 'Complex b -> Type) -> ({c:'Repr} -> (d:'Float) -> (e:'Float) -> a c (Complex c d e)) -> {f:'Repr} -> (g : 'Complex f) -> a f g
11match'Complex :: (a : Type->Type) -> ((b:'Repr) -> a ('Complex b)) -> (c:Type) -> a c -> a c 11match'Complex :: (a : Type->Type) -> ((b:'Repr) -> a ('Complex b)) -> (c:Type) -> a c -> a c
12repr :: {a:'Repr} -> 'Complex a -> 'Repr 12repr :: {a:'Repr} -> 'Complex a -> 'Repr
13normal :: 'Float -> 'Float -> 'Complex Normal 13normal :: 'Float -> 'Float -> 'Complex Normal
14polar :: 'Float -> 'Float -> 'Complex Polar 14polar :: 'Float -> 'Float -> 'Complex Polar
15cabs :: {a:'Repr} -> 'Complex a -> 'Float 15cabs :: {a:'Repr} -> 'Complex a -> 'Float
16toPolar :: 'Complex Normal -> 'Complex Polar 16toPolar :: 'Complex Normal -> 'Complex Polar
17toNormal :: 'Complex Polar -> 'Complex Normal 17toNormal :: 'Complex Polar -> 'Complex Normal
18it_should_fail :: {a:'Repr} -> 'Complex a -> 'Float 18it_should_fail :: {a:'Repr} -> 'Complex a -> 'Float
19add :: {a:'Repr} -> {b:'Repr} -> 'Complex a -> 'Complex b -> 'Complex a 19add :: {a:'Repr} -> {b:'Repr} -> 'Complex a -> 'Complex b -> 'Complex a
20mul :: {a:'Repr} -> {b:'Repr} -> 'Complex a -> 'Complex b -> 'Complex a 20mul :: {a:'Repr} -> {b:'Repr} -> 'Complex a -> 'Complex b -> 'Complex a
21s :: {a:'Repr} -> 'Complex a -> 'Complex a 21s :: {a:'Repr} -> 'Complex a -> 'Complex a
22s4 :: {a:'Repr} -> 'Complex a -> 'Complex a 22s4 :: {a:'Repr} -> 'Complex a -> 'Complex a
23iter :: {a:'Repr} -> 'Complex a -> 'Complex a 23iter :: {a:'Repr} -> 'Complex a -> 'Complex a
24mandel :: {a:'Repr} -> 'Complex a -> 'VecScalar 1 'Bool 24mandel :: {a:'Repr} -> 'Complex a -> 'VecScalar 1 'Bool
25------------ tooltips 25------------ tooltips
26testdata/complex.lc 3:6-3:10 Type 26testdata/complex.lc 3:6-3:10 Type
27testdata/complex.lc 3:6-3:27 Type 27testdata/complex.lc 3:6-3:27 Type
diff --git a/testdata/concatmap01.out b/testdata/concatmap01.out
index 65af037c..f832724c 100644
--- a/testdata/concatmap01.out
+++ b/testdata/concatmap01.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/data.out b/testdata/data.out
index 1dddf3f4..1581a0c0 100644
--- a/testdata/data.out
+++ b/testdata/data.out
@@ -1,31 +1,31 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3'Data0 :: Type 3'Data0 :: Type
4Data0 :: 'Data0 4Data0 :: 'Data0
5'Data0Case :: (a : 'Data0->Type) -> a Data0 -> (b:'Data0) -> a b 5'Data0Case :: (a : 'Data0->Type) -> a Data0 -> (b:'Data0) -> a b
6match'Data0 :: (a : Type->Type) -> a 'Data0 -> (b:Type) -> a b -> a b 6match'Data0 :: (a : Type->Type) -> a 'Data0 -> (b:Type) -> a b -> a b
7'Data1 :: Type -> Type -> Type->Type 7'Data1 :: Type -> Type -> Type->Type
8Data1 :: {a} -> {b} -> {c} -> a -> b -> c -> 'Data1 a b c 8Data1 :: {a} -> {b} -> {c} -> a -> b -> c -> 'Data1 a b c
9'Data1Case :: {a} -> {b} -> {c} -> (d : 'Data1 a b c -> Type) -> ((e:a) -> (f:b) -> (g:c) -> d (Data1 e f g)) -> (h : 'Data1 a b c) -> d h 9'Data1Case :: {a} -> {b} -> {c} -> (d : 'Data1 a b c -> Type) -> ((e:a) -> (f:b) -> (g:c) -> d (Data1 e f g)) -> (h : 'Data1 a b c) -> d h
10match'Data1 :: (a : Type->Type) -> ((b:Type) -> (c:Type) -> (d:Type) -> a ('Data1 b c d)) -> (e:Type) -> a e -> a e 10match'Data1 :: (a : Type->Type) -> ((b:Type) -> (c:Type) -> (d:Type) -> a ('Data1 b c d)) -> (e:Type) -> a e -> a e
11'Data2 :: Type 11'Data2 :: Type
12Data21 :: 'Int->'Data2 12Data21 :: 'Int->'Data2
13Data22 :: 'Int -> 'Int->'Data2 13Data22 :: 'Int -> 'Int->'Data2
14Data23 :: 'Int->'Data2 14Data23 :: 'Int->'Data2
15Data24 :: 'Data2 15Data24 :: 'Data2
16'Data2Case :: (a : 'Data2->Type) -> ((b:'Int) -> a (Data21 b)) -> ((c:'Int) -> (d:'Int) -> a (Data22 c d)) -> ((e:'Int) -> a (Data23 e)) -> a Data24 -> (f:'Data2) -> a f 16'Data2Case :: (a : 'Data2->Type) -> ((b:'Int) -> a (Data21 b)) -> ((c:'Int) -> (d:'Int) -> a (Data22 c d)) -> ((e:'Int) -> a (Data23 e)) -> a Data24 -> (f:'Data2) -> a f
17match'Data2 :: (a : Type->Type) -> a 'Data2 -> (b:Type) -> a b -> a b 17match'Data2 :: (a : Type->Type) -> a 'Data2 -> (b:Type) -> a b -> a b
18x :: 'Data2->'Int 18x :: 'Data2->'Int
19y :: 'Data2->'Int 19y :: 'Data2->'Int
20'Data5 :: Type -> Type -> Type->Type 20'Data5 :: Type -> Type -> Type->Type
21Data51 :: {a} -> {b} -> {c} -> a -> 'Data5 a b c 21Data51 :: {a} -> {b} -> {c} -> a -> 'Data5 a b c
22Data52 :: {a} -> {b} -> {c} -> a -> b -> c -> 'Data5 a b c 22Data52 :: {a} -> {b} -> {c} -> a -> b -> c -> 'Data5 a b c
23Data53 :: {a} -> {b} -> {c} -> 'Int -> a -> 'Float -> b -> c -> 'Data5 a b c 23Data53 :: {a} -> {b} -> {c} -> 'Int -> a -> 'Float -> b -> c -> 'Data5 a b c
24'Data5Case :: {a} -> {b} -> {c} -> (d : 'Data5 a b c -> Type) -> ((e:a) -> d (Data51 e)) -> ((f:a) -> (g:b) -> (h:c) -> d (Data52 f g h)) -> ((i:'Int) -> (j:a) -> (k:'Float) -> (l:b) -> (m:c) -> d (Data53 i j k l m)) -> (n : 'Data5 a b c) -> d n 24'Data5Case :: {a} -> {b} -> {c} -> (d : 'Data5 a b c -> Type) -> ((e:a) -> d (Data51 e)) -> ((f:a) -> (g:b) -> (h:c) -> d (Data52 f g h)) -> ((i:'Int) -> (j:a) -> (k:'Float) -> (l:b) -> (m:c) -> d (Data53 i j k l m)) -> (n : 'Data5 a b c) -> d n
25match'Data5 :: (a : Type->Type) -> ((b:Type) -> (c:Type) -> (d:Type) -> a ('Data5 b c d)) -> (e:Type) -> a e -> a e 25match'Data5 :: (a : Type->Type) -> ((b:Type) -> (c:Type) -> (d:Type) -> a ('Data5 b c d)) -> (e:Type) -> a e -> a e
26a5 :: {a} -> {b} -> {c} -> 'Data5 a b c -> a 26a5 :: {a} -> {b} -> {c} -> 'Data5 a b c -> a
27b5 :: {a} -> {b} -> {c} -> 'Data5 a b c -> b 27b5 :: {a} -> {b} -> {c} -> 'Data5 a b c -> b
28c5 :: {a} -> {b} -> {c} -> 'Data5 a b c -> c 28c5 :: {a} -> {b} -> {c} -> 'Data5 a b c -> c
29------------ tooltips 29------------ tooltips
30testdata/data.lc 1:6-1:11 Type 30testdata/data.lc 1:6-1:11 Type
31testdata/data.lc 1:6-1:19 Type 31testdata/data.lc 1:6-1:19 Type
diff --git a/testdata/data.reject.out b/testdata/data.reject.out
index 50aeb5df..81b44641 100644
--- a/testdata/data.reject.out
+++ b/testdata/data.reject.out
@@ -2,7 +2,7 @@ can't find: a in testdata/data.reject.lc:1:20:
2data Data1 = Data1 a b c 2data Data1 = Data1 a b c
3 ^ 3 ^
4------------ trace 4------------ trace
5'Data1 :: Type 5'Data1 :: Type
6!can't find: a in testdata/data.reject.lc:1:20: 6!can't find: a in testdata/data.reject.lc:1:20:
7data Data1 = Data1 a b c 7data Data1 = Data1 a b c
8 ^ 8 ^
diff --git a/testdata/dotdot01.out b/testdata/dotdot01.out
index 65af037c..f832724c 100644
--- a/testdata/dotdot01.out
+++ b/testdata/dotdot01.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/dotdot02.out b/testdata/dotdot02.out
index 65af037c..f832724c 100644
--- a/testdata/dotdot02.out
+++ b/testdata/dotdot02.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/empty.out b/testdata/empty.out
index bcb2f224..6714e719 100644
--- a/testdata/empty.out
+++ b/testdata/empty.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3'Empty :: Type 3'Empty :: Type
4'EmptyCase :: (a : 'Empty->Type) -> (b:'Empty) -> a b 4'EmptyCase :: (a : 'Empty->Type) -> (b:'Empty) -> a b
5match'Empty :: (a : Type->Type) -> a 'Empty -> (b:Type) -> a b -> a b 5match'Empty :: (a : Type->Type) -> a 'Empty -> (b:Type) -> a b -> a b
6------------ tooltips 6------------ tooltips
7testdata/empty.lc 3:6-3:11 Type 7testdata/empty.lc 3:6-3:11 Type
diff --git a/testdata/framebuffer02.reject.out b/testdata/framebuffer02.reject.out
index e5a4ab73..2c4e68d1 100644
--- a/testdata/framebuffer02.reject.out
+++ b/testdata/framebuffer02.reject.out
@@ -1,7 +1,7 @@
1type error: can not unify 1type error: can not unify
20 20
3with 3with
41 41
5 5
6in testdata/framebuffer02.reject.lc:2:17: 6in testdata/framebuffer02.reject.lc:2:17:
7 let frame = FrameBuffer (colorImage1 (V4 0.0 0.0 0.4 1.0) 7 let frame = FrameBuffer (colorImage1 (V4 0.0 0.0 0.4 1.0)
@@ -11,9 +11,9 @@ in testdata/framebuffer02.reject.lc:2:17:
11 11
12------------ trace 12------------ trace
13!type error: can not unify 13!type error: can not unify
140 140
15with 15with
161 161
17 17
18in testdata/framebuffer02.reject.lc:2:17: 18in testdata/framebuffer02.reject.lc:2:17:
19 let frame = FrameBuffer (colorImage1 (V4 0.0 0.0 0.4 1.0) 19 let frame = FrameBuffer (colorImage1 (V4 0.0 0.0 0.4 1.0)
diff --git a/testdata/fromto.out b/testdata/fromto.out
index 65af037c..f832724c 100644
--- a/testdata/fromto.out
+++ b/testdata/fromto.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/id.out b/testdata/id.out
index 046d96cd..08cb1501 100644
--- a/testdata/id.out
+++ b/testdata/id.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3main' :: ('Float, 'Bool) 3main' :: ('Float, 'Bool)
4------------ tooltips 4------------ tooltips
5testdata/id.lc 1:1-1:6 (Float, Bool) 5testdata/id.lc 1:1-1:6 (Float, Bool)
6testdata/id.lc 3:19-3:20 b_ 6testdata/id.lc 3:19-3:20 b_
diff --git a/testdata/ifThenElse01.out b/testdata/ifThenElse01.out
index 65af037c..f832724c 100644
--- a/testdata/ifThenElse01.out
+++ b/testdata/ifThenElse01.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/instantiate.out b/testdata/instantiate.out
index ac92ae29..b1df8984 100644
--- a/testdata/instantiate.out
+++ b/testdata/instantiate.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3main' :: 'VecS 'Float 2 3main' :: 'VecS 'Float 2
4------------ tooltips 4------------ tooltips
5testdata/instantiate.lc 1:1-1:6 VecS Float 2 5testdata/instantiate.lc 1:1-1:6 VecS Float 2
6testdata/instantiate.lc 2:13-2:20 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a 6testdata/instantiate.lc 2:13-2:20 {a} -> {_ : Num (MatVecScalarElem a)} -> a -> a->a
diff --git a/testdata/instantiate2.out b/testdata/instantiate2.out
index 1a2a8631..b4932da4 100644
--- a/testdata/instantiate2.out
+++ b/testdata/instantiate2.out
@@ -1 +1 @@
(+ ('VecS 'Float 2) TT (V2 1.0 2.0) (V2 2.3 3.4), 3.0) \ No newline at end of file (+ ('VecS 'Float 2) TT (V2 1.0 2.0) (V2 2.3 3.4), 3.0) \ No newline at end of file
diff --git a/testdata/it.out b/testdata/it.out
index 65af037c..f832724c 100644
--- a/testdata/it.out
+++ b/testdata/it.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/language-features/adt/adt01.out b/testdata/language-features/adt/adt01.out
index 65af037c..f832724c 100644
--- a/testdata/language-features/adt/adt01.out
+++ b/testdata/language-features/adt/adt01.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/language-features/adt/adt02.out b/testdata/language-features/adt/adt02.out
index 65af037c..f832724c 100644
--- a/testdata/language-features/adt/adt02.out
+++ b/testdata/language-features/adt/adt02.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/language-features/adt/adt02.reject.out b/testdata/language-features/adt/adt02.reject.out
index 48ca3cb9..ab363b68 100644
--- a/testdata/language-features/adt/adt02.reject.out
+++ b/testdata/language-features/adt/adt02.reject.out
@@ -1,20 +1,20 @@
1type error: can not unify 1type error: can not unify
2'Bool 2'Bool
3with 3with
4'Int 4'Int
5 5
6in proj 6in proj
7 7
8------------ trace 8------------ trace
9'Data3 :: Type 9'Data3 :: Type
10Data3 :: 'Bool -> 'Char -> 'Bool->'Data3 10Data3 :: 'Bool -> 'Char -> 'Bool->'Data3
11Data31 :: 'Int -> 'String -> 'Int->'Data3 11Data31 :: 'Int -> 'String -> 'Int->'Data3
12'Data3Case :: (a : 'Data3->Type) -> ((b:'Bool) -> (c:'Char) -> (d:'Bool) -> a (Data3 b c d)) -> ((e:'Int) -> (f:'String) -> (g:'Int) -> a (Data31 e f g)) -> (h:'Data3) -> a h 12'Data3Case :: (a : 'Data3->Type) -> ((b:'Bool) -> (c:'Char) -> (d:'Bool) -> a (Data3 b c d)) -> ((e:'Int) -> (f:'String) -> (g:'Int) -> a (Data31 e f g)) -> (h:'Data3) -> a h
13match'Data3 :: (a : Type->Type) -> a 'Data3 -> (b:Type) -> a b -> a b 13match'Data3 :: (a : Type->Type) -> a 'Data3 -> (b:Type) -> a b -> a b
14!type error: can not unify 14!type error: can not unify
15'Bool 15'Bool
16with 16with
17'Int 17'Int
18 18
19in proj 19in proj
20 20
diff --git a/testdata/language-features/adt/adt03.reject.out b/testdata/language-features/adt/adt03.reject.out
index 0091dc83..70c0c4e7 100644
--- a/testdata/language-features/adt/adt03.reject.out
+++ b/testdata/language-features/adt/adt03.reject.out
@@ -2,7 +2,7 @@ can't find: a in testdata/language-features/adt/adt03.reject.lc:2:20:
2data Data3 = Data3 a b c 2data Data3 = Data3 a b c
3 ^ 3 ^
4------------ trace 4------------ trace
5'Data3 :: Type 5'Data3 :: Type
6!can't find: a in testdata/language-features/adt/adt03.reject.lc:2:20: 6!can't find: a in testdata/language-features/adt/adt03.reject.lc:2:20:
7data Data3 = Data3 a b c 7data Data3 = Data3 a b c
8 ^ 8 ^
diff --git a/testdata/language-features/adt/adt04.reject.out b/testdata/language-features/adt/adt04.reject.out
index bae22981..85b91c2c 100644
--- a/testdata/language-features/adt/adt04.reject.out
+++ b/testdata/language-features/adt/adt04.reject.out
@@ -2,7 +2,7 @@ can't find: a in testdata/language-features/adt/adt04.reject.lc:2:27:
2data Data3 = Data3 { x :: a , y :: b , z :: c } 2data Data3 = Data3 { x :: a , y :: b , z :: c }
3 ^ 3 ^
4------------ trace 4------------ trace
5'Data3 :: Type 5'Data3 :: Type
6!can't find: a in testdata/language-features/adt/adt04.reject.lc:2:27: 6!can't find: a in testdata/language-features/adt/adt04.reject.lc:2:27:
7data Data3 = Data3 { x :: a , y :: b , z :: c } 7data Data3 = Data3 { x :: a , y :: b , z :: c }
8 ^ 8 ^
diff --git a/testdata/language-features/adt/adt05.out b/testdata/language-features/adt/adt05.out
index 97b40b5c..bedb86f2 100644
--- a/testdata/language-features/adt/adt05.out
+++ b/testdata/language-features/adt/adt05.out
@@ -1 +1 @@
main \ No newline at end of file main \ No newline at end of file
diff --git a/testdata/language-features/adt/gadt01.out b/testdata/language-features/adt/gadt01.out
index 65af037c..f832724c 100644
--- a/testdata/language-features/adt/gadt01.out
+++ b/testdata/language-features/adt/gadt01.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/language-features/adt/gadt01.reject.out b/testdata/language-features/adt/gadt01.reject.out
index a993010b..39a78fe6 100644
--- a/testdata/language-features/adt/gadt01.reject.out
+++ b/testdata/language-features/adt/gadt01.reject.out
@@ -1,6 +1,6 @@
1illegal data definition (parameters are not uniform) 1illegal data definition (parameters are not uniform)
2------------ trace 2------------ trace
3'M3 :: Type -> 'String->Type 3'M3 :: Type -> 'String->Type
4!illegal data definition (parameters are not uniform) 4!illegal data definition (parameters are not uniform)
5------------ tooltips 5------------ tooltips
6testdata/language-features/adt/gadt01.reject.lc 5:6-5:8 Type -> String->Type 6testdata/language-features/adt/gadt01.reject.lc 5:6-5:8 Type -> String->Type
diff --git a/testdata/language-features/adt/gadt03.reject.out b/testdata/language-features/adt/gadt03.reject.out
index cb6cd714..da32d15b 100644
--- a/testdata/language-features/adt/gadt03.reject.out
+++ b/testdata/language-features/adt/gadt03.reject.out
@@ -1,10 +1,10 @@
1illegal data definition (parameters are not uniform) 1illegal data definition (parameters are not uniform)
2------------ trace 2------------ trace
3'M2 :: Type -> 'String->Type 3'M2 :: Type -> 'String->Type
4Value2 :: {a} -> a -> {b:'String} -> 'M2 a b 4Value2 :: {a} -> a -> {b:'String} -> 'M2 a b
5'M2Case :: {a} -> (b : (c:'String) -> 'M2 a c -> Type) -> ((d:a) -> {e:'String} -> b e (Value2 d e)) -> {f:'String} -> (g : 'M2 a f) -> b f g 5'M2Case :: {a} -> (b : (c:'String) -> 'M2 a c -> Type) -> ((d:a) -> {e:'String} -> b e (Value2 d e)) -> {f:'String} -> (g : 'M2 a f) -> b f g
6match'M2 :: (a : Type->Type) -> ((b:Type) -> (c:'String) -> a ('M2 b c)) -> (d:Type) -> a d -> a d 6match'M2 :: (a : Type->Type) -> ((b:Type) -> (c:'String) -> a ('M2 b c)) -> (d:Type) -> a d -> a d
7'M3 :: Type -> 'String->Type 7'M3 :: Type -> 'String->Type
8!illegal data definition (parameters are not uniform) 8!illegal data definition (parameters are not uniform)
9------------ tooltips 9------------ tooltips
10testdata/language-features/adt/gadt03.reject.lc 2:6-2:8 Type | Type -> String->Type 10testdata/language-features/adt/gadt03.reject.lc 2:6-2:8 Type | Type -> String->Type
diff --git a/testdata/language-features/adt/gadt04.reject.out b/testdata/language-features/adt/gadt04.reject.out
index 1871c4aa..a1aa694f 100644
--- a/testdata/language-features/adt/gadt04.reject.out
+++ b/testdata/language-features/adt/gadt04.reject.out
@@ -5,12 +5,12 @@ already defined Value at testdata/language-features/adt/gadt04.reject.lc:6:3:
5 Value :: a -> forall m . M a m 5 Value :: a -> forall m . M a m
6 ^^^^^ 6 ^^^^^
7------------ trace 7------------ trace
8'M :: Type -> 'String->Type 8'M :: Type -> 'String->Type
9Value :: {a} -> a -> {b:'String} -> 'M a b 9Value :: {a} -> a -> {b:'String} -> 'M a b
10'MCase :: (a : (b:Type) -> (c:'String) -> 'M b c -> Type) -> ({d} -> (e:d) -> {f:'String} -> a d f (Value d e f)) -> {g} -> {h:'String} -> (i : 'M g h) -> a g h i 10'MCase :: (a : (b:Type) -> (c:'String) -> 'M b c -> Type) -> ({d} -> (e:d) -> {f:'String} -> a d f (Value d e f)) -> {g} -> {h:'String} -> (i : 'M g h) -> a g h i
11match'M :: (a : Type->Type) -> ((b:Type) -> (c:'String) -> a ('M b c)) -> (d:Type) -> a d -> a d 11match'M :: (a : Type->Type) -> ((b:Type) -> (c:'String) -> a ('M b c)) -> (d:Type) -> a d -> a d
12'M2 :: Type -> 'String->Type 12'M2 :: Type -> 'String->Type
13Value :: {a} -> a -> {b:'String} -> 'M2 a b 13Value :: {a} -> a -> {b:'String} -> 'M2 a b
14!already defined Value at testdata/language-features/adt/gadt04.reject.lc:6:3: 14!already defined Value at testdata/language-features/adt/gadt04.reject.lc:6:3:
15 Value :: a -> forall m . M2 a m 15 Value :: a -> forall m . M2 a m
16 ^^^^^ 16 ^^^^^
diff --git a/testdata/language-features/as-pattern/as-pattern01.out b/testdata/language-features/as-pattern/as-pattern01.out
index 97b40b5c..bedb86f2 100644
--- a/testdata/language-features/as-pattern/as-pattern01.out
+++ b/testdata/language-features/as-pattern/as-pattern01.out
@@ -1 +1 @@
main \ No newline at end of file main \ No newline at end of file
diff --git a/testdata/language-features/as-pattern/as-pattern02.out b/testdata/language-features/as-pattern/as-pattern02.out
index 97b40b5c..bedb86f2 100644
--- a/testdata/language-features/as-pattern/as-pattern02.out
+++ b/testdata/language-features/as-pattern/as-pattern02.out
@@ -1 +1 @@
main \ No newline at end of file main \ No newline at end of file
diff --git a/testdata/language-features/basic-list/dotdot01.out b/testdata/language-features/basic-list/dotdot01.out
index 97b40b5c..bedb86f2 100644
--- a/testdata/language-features/basic-list/dotdot01.out
+++ b/testdata/language-features/basic-list/dotdot01.out
@@ -1 +1 @@
main \ No newline at end of file main \ No newline at end of file
diff --git a/testdata/language-features/basic-list/list01.out b/testdata/language-features/basic-list/list01.out
index 18efaa40..d4d2b08d 100644
--- a/testdata/language-features/basic-list/list01.out
+++ b/testdata/language-features/basic-list/list01.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: {a} -> 'List a 3value1 :: {a} -> 'List a
4value2 :: {a} -> {_ : 'Num a} -> 'List a 4value2 :: {a} -> {_ : 'Num a} -> 'List a
5value3 :: 'List 'Char 5value3 :: 'List 'Char
6------------ tooltips 6------------ tooltips
7testdata/language-features/basic-list/list01.lc 1:1-1:7 {a} -> List a 7testdata/language-features/basic-list/list01.lc 1:1-1:7 {a} -> List a
8testdata/language-features/basic-list/list01.lc 1:10-1:12 {a} -> List a 8testdata/language-features/basic-list/list01.lc 1:10-1:12 {a} -> List a
diff --git a/testdata/language-features/basic-list/list02.out b/testdata/language-features/basic-list/list02.out
index 02f69ace..7863cd3b 100644
--- a/testdata/language-features/basic-list/list02.out
+++ b/testdata/language-features/basic-list/list02.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: {a} -> 'List a 3value1 :: {a} -> 'List a
4value2 :: {a} -> {_ : 'Num a} -> 'List a 4value2 :: {a} -> {_ : 'Num a} -> 'List a
5value3 :: 'List 'Char 5value3 :: 'List 'Char
6------------ tooltips 6------------ tooltips
7testdata/language-features/basic-list/list02.lc 1:1-1:7 {a} -> List a 7testdata/language-features/basic-list/list02.lc 1:1-1:7 {a} -> List a
8testdata/language-features/basic-list/list02.lc 1:10-2:4 {a} -> List a 8testdata/language-features/basic-list/list02.lc 1:10-2:4 {a} -> List a
diff --git a/testdata/language-features/basic-list/list07.reject.out b/testdata/language-features/basic-list/list07.reject.out
index 48444536..49e58ae2 100644
--- a/testdata/language-features/basic-list/list07.reject.out
+++ b/testdata/language-features/basic-list/list07.reject.out
@@ -1,15 +1,15 @@
1type error: can not unify 1type error: can not unify
2'Float 2'Float
3with 3with
4'Char 4'Char
5 5
6in builtin Nil 6in builtin Nil
7 7
8------------ trace 8------------ trace
9!type error: can not unify 9!type error: can not unify
10'Float 10'Float
11with 11with
12'Char 12'Char
13 13
14in builtin Nil 14in builtin Nil
15 15
diff --git a/testdata/language-features/basic-list/list08.out b/testdata/language-features/basic-list/list08.out
index 70d5ec40..5817af05 100644
--- a/testdata/language-features/basic-list/list08.out
+++ b/testdata/language-features/basic-list/list08.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'List 'Float 3value :: 'List 'Float
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/list08.lc 1:1-1:6 List Float 5testdata/language-features/basic-list/list08.lc 1:1-1:6 List Float
6testdata/language-features/basic-list/list08.lc 1:9-1:16 List Float 6testdata/language-features/basic-list/list08.lc 1:9-1:16 List Float
diff --git a/testdata/language-features/basic-list/list09.out b/testdata/language-features/basic-list/list09.out
index a9a3eefa..838f14f3 100644
--- a/testdata/language-features/basic-list/list09.out
+++ b/testdata/language-features/basic-list/list09.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'List 'Float 3value :: 'List 'Float
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/list09.lc 1:1-1:6 List Float 5testdata/language-features/basic-list/list09.lc 1:1-1:6 List Float
6testdata/language-features/basic-list/list09.lc 1:9-1:16 List Float 6testdata/language-features/basic-list/list09.lc 1:9-1:16 List Float
diff --git a/testdata/language-features/basic-list/list10.reject.out b/testdata/language-features/basic-list/list10.reject.out
index 01484c77..1a8c354f 100644
--- a/testdata/language-features/basic-list/list10.reject.out
+++ b/testdata/language-features/basic-list/list10.reject.out
@@ -1,15 +1,15 @@
1type error: can not unify 1type error: can not unify
2'Int 2'Int
3with 3with
4'Float 4'Float
5 5
6in builtin Nil 6in builtin Nil
7 7
8------------ trace 8------------ trace
9!type error: can not unify 9!type error: can not unify
10'Int 10'Int
11with 11with
12'Float 12'Float
13 13
14in builtin Nil 14in builtin Nil
15 15
diff --git a/testdata/language-features/basic-list/list11.out b/testdata/language-features/basic-list/list11.out
index 659a85eb..db160d1b 100644
--- a/testdata/language-features/basic-list/list11.out
+++ b/testdata/language-features/basic-list/list11.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: {a} -> {_ : 'Num a} -> 'List a 3value :: {a} -> {_ : 'Num a} -> 'List a
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/list11.lc 1:1-1:6 {a} -> {_ : Num a} -> List a 5testdata/language-features/basic-list/list11.lc 1:1-1:6 {a} -> {_ : Num a} -> List a
6testdata/language-features/basic-list/list11.lc 1:9-1:10 b_ 6testdata/language-features/basic-list/list11.lc 1:9-1:10 b_
diff --git a/testdata/language-features/basic-list/list12.out b/testdata/language-features/basic-list/list12.out
index 83ceff3c..eebc55d2 100644
--- a/testdata/language-features/basic-list/list12.out
+++ b/testdata/language-features/basic-list/list12.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: {a} -> {_ : 'Num a} -> 'List a 3value :: {a} -> {_ : 'Num a} -> 'List a
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/list12.lc 1:1-1:6 {a} -> {_ : Num a} -> List a 5testdata/language-features/basic-list/list12.lc 1:1-1:6 {a} -> {_ : Num a} -> List a
6testdata/language-features/basic-list/list12.lc 1:9-1:10 b_ 6testdata/language-features/basic-list/list12.lc 1:9-1:10 b_
diff --git a/testdata/language-features/basic-list/list13.out b/testdata/language-features/basic-list/list13.out
index b3a4a01b..048307dc 100644
--- a/testdata/language-features/basic-list/list13.out
+++ b/testdata/language-features/basic-list/list13.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'List 'Char 3value :: 'List 'Char
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/list13.lc 1:1-1:6 List Char 5testdata/language-features/basic-list/list13.lc 1:1-1:6 List Char
6testdata/language-features/basic-list/list13.lc 1:9-1:12 Char 6testdata/language-features/basic-list/list13.lc 1:9-1:12 Char
diff --git a/testdata/language-features/basic-list/list14.reject.out b/testdata/language-features/basic-list/list14.reject.out
index 2d6d00ea..64380216 100644
--- a/testdata/language-features/basic-list/list14.reject.out
+++ b/testdata/language-features/basic-list/list14.reject.out
@@ -1,7 +1,7 @@
1type error: can not unify 1type error: can not unify
2'List 'Char 2'List 'Char
3with 3with
4() 4()
5 5
6in testdata/language-features/basic-list/list14.reject.lc:1:17: 6in testdata/language-features/basic-list/list14.reject.lc:1:17:
7value = 'h':'i':() 7value = 'h':'i':()
@@ -9,9 +9,9 @@ value = 'h':'i':()
9 9
10------------ trace 10------------ trace
11!type error: can not unify 11!type error: can not unify
12'List 'Char 12'List 'Char
13with 13with
14() 14()
15 15
16in testdata/language-features/basic-list/list14.reject.lc:1:17: 16in testdata/language-features/basic-list/list14.reject.lc:1:17:
17value = 'h':'i':() 17value = 'h':'i':()
diff --git a/testdata/language-features/basic-list/list15.reject.out b/testdata/language-features/basic-list/list15.reject.out
index 50962086..a4ebc72a 100644
--- a/testdata/language-features/basic-list/list15.reject.out
+++ b/testdata/language-features/basic-list/list15.reject.out
@@ -1,7 +1,7 @@
1type error: can not unify 1type error: can not unify
2'Char 2'Char
3with 3with
4() 4()
5 5
6in testdata/language-features/basic-list/list15.reject.lc:1:20: 6in testdata/language-features/basic-list/list15.reject.lc:1:20:
7value = 'h':'i':():[] 7value = 'h':'i':():[]
@@ -9,9 +9,9 @@ value = 'h':'i':():[]
9 9
10------------ trace 10------------ trace
11!type error: can not unify 11!type error: can not unify
12'Char 12'Char
13with 13with
14() 14()
15 15
16in testdata/language-features/basic-list/list15.reject.lc:1:20: 16in testdata/language-features/basic-list/list15.reject.lc:1:20:
17value = 'h':'i':():[] 17value = 'h':'i':():[]
diff --git a/testdata/language-features/basic-list/list16.reject.out b/testdata/language-features/basic-list/list16.reject.out
index a409c05b..470302ef 100644
--- a/testdata/language-features/basic-list/list16.reject.out
+++ b/testdata/language-features/basic-list/list16.reject.out
@@ -1,7 +1,7 @@
1type error: can not unify 1type error: can not unify
2'List 'Char 2'List 'Char
3with 3with
4'Char 4'Char
5 5
6in testdata/language-features/basic-list/list16.reject.lc:1:13: 6in testdata/language-features/basic-list/list16.reject.lc:1:13:
7value = 'h':'i' 7value = 'h':'i'
@@ -9,9 +9,9 @@ value = 'h':'i'
9 9
10------------ trace 10------------ trace
11!type error: can not unify 11!type error: can not unify
12'List 'Char 12'List 'Char
13with 13with
14'Char 14'Char
15 15
16in testdata/language-features/basic-list/list16.reject.lc:1:13: 16in testdata/language-features/basic-list/list16.reject.lc:1:13:
17value = 'h':'i' 17value = 'h':'i'
diff --git a/testdata/language-features/basic-list/listcomp01.out b/testdata/language-features/basic-list/listcomp01.out
index d361c85d..8b857f79 100644
--- a/testdata/language-features/basic-list/listcomp01.out
+++ b/testdata/language-features/basic-list/listcomp01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'List () 3value :: 'List ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/listcomp01.lc 1:1-1:6 List () 5testdata/language-features/basic-list/listcomp01.lc 1:1-1:6 List ()
6testdata/language-features/basic-list/listcomp01.lc 1:9-1:34 List () 6testdata/language-features/basic-list/listcomp01.lc 1:9-1:34 List ()
diff --git a/testdata/language-features/basic-list/listcomp02.out b/testdata/language-features/basic-list/listcomp02.out
index 29c0d611..464eb751 100644
--- a/testdata/language-features/basic-list/listcomp02.out
+++ b/testdata/language-features/basic-list/listcomp02.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3l :: 'List () 3l :: 'List ()
4value :: 'List () 4value :: 'List ()
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-list/listcomp02.lc 1:1-1:2 List () 6testdata/language-features/basic-list/listcomp02.lc 1:1-1:2 List ()
7testdata/language-features/basic-list/listcomp02.lc 1:5-1:18 List () 7testdata/language-features/basic-list/listcomp02.lc 1:5-1:18 List ()
diff --git a/testdata/language-features/basic-list/listcomp03.out b/testdata/language-features/basic-list/listcomp03.out
index 44f90d26..1873533b 100644
--- a/testdata/language-features/basic-list/listcomp03.out
+++ b/testdata/language-features/basic-list/listcomp03.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'List () 3value :: 'List ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/listcomp03.lc 1:1-1:6 List () 5testdata/language-features/basic-list/listcomp03.lc 1:1-1:6 List ()
6testdata/language-features/basic-list/listcomp03.lc 1:9-1:41 List () 6testdata/language-features/basic-list/listcomp03.lc 1:9-1:41 List ()
diff --git a/testdata/language-features/basic-list/listcomp04.out b/testdata/language-features/basic-list/listcomp04.out
index a013a9e7..7fe1306f 100644
--- a/testdata/language-features/basic-list/listcomp04.out
+++ b/testdata/language-features/basic-list/listcomp04.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3l :: 'List () 3l :: 'List ()
4value :: 'List () 4value :: 'List ()
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-list/listcomp04.lc 1:1-1:2 List () 6testdata/language-features/basic-list/listcomp04.lc 1:1-1:2 List ()
7testdata/language-features/basic-list/listcomp04.lc 1:5-1:18 List () 7testdata/language-features/basic-list/listcomp04.lc 1:5-1:18 List ()
diff --git a/testdata/language-features/basic-list/listcomp05.out b/testdata/language-features/basic-list/listcomp05.out
index 8b16597b..ff871c08 100644
--- a/testdata/language-features/basic-list/listcomp05.out
+++ b/testdata/language-features/basic-list/listcomp05.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'List () 3value :: 'List ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/listcomp05.lc 1:1-1:6 List () 5testdata/language-features/basic-list/listcomp05.lc 1:1-1:6 List ()
6testdata/language-features/basic-list/listcomp05.lc 1:9-1:39 List () 6testdata/language-features/basic-list/listcomp05.lc 1:9-1:39 List ()
diff --git a/testdata/language-features/basic-list/listcomp06.out b/testdata/language-features/basic-list/listcomp06.out
index fef46590..65679284 100644
--- a/testdata/language-features/basic-list/listcomp06.out
+++ b/testdata/language-features/basic-list/listcomp06.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: 'List () 3value1 :: 'List ()
4value2 :: 'List () 4value2 :: 'List ()
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-list/listcomp06.lc 1:1-1:7 List () 6testdata/language-features/basic-list/listcomp06.lc 1:1-1:7 List ()
7testdata/language-features/basic-list/listcomp06.lc 1:10-1:46 List () 7testdata/language-features/basic-list/listcomp06.lc 1:10-1:46 List ()
diff --git a/testdata/language-features/basic-list/listcomp07.out b/testdata/language-features/basic-list/listcomp07.out
index dad2ff25..6238e239 100644
--- a/testdata/language-features/basic-list/listcomp07.out
+++ b/testdata/language-features/basic-list/listcomp07.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: 'List () 3value1 :: 'List ()
4value2 :: 'List () 4value2 :: 'List ()
5value3 :: 'List () 5value3 :: 'List ()
6------------ tooltips 6------------ tooltips
7testdata/language-features/basic-list/listcomp07.lc 1:1-1:7 List () 7testdata/language-features/basic-list/listcomp07.lc 1:1-1:7 List ()
8testdata/language-features/basic-list/listcomp07.lc 1:10-6:11 List () 8testdata/language-features/basic-list/listcomp07.lc 1:10-6:11 List ()
diff --git a/testdata/language-features/basic-list/listcomp08.reject.out b/testdata/language-features/basic-list/listcomp08.reject.out
index f5f8f488..8bf99ab5 100644
--- a/testdata/language-features/basic-list/listcomp08.reject.out
+++ b/testdata/language-features/basic-list/listcomp08.reject.out
@@ -1,7 +1,7 @@
1type error: can not unify 1type error: can not unify
2'Bool 2'Bool
3with 3with
4'String 4'String
5 5
6in testdata/language-features/basic-list/listcomp08.reject.lc:1:23: 6in testdata/language-features/basic-list/listcomp08.reject.lc:1:23:
7value = [x | x <- [], "not Bool"] 7value = [x | x <- [], "not Bool"]
@@ -9,9 +9,9 @@ value = [x | x <- [], "not Bool"]
9 9
10------------ trace 10------------ trace
11!type error: can not unify 11!type error: can not unify
12'Bool 12'Bool
13with 13with
14'String 14'String
15 15
16in testdata/language-features/basic-list/listcomp08.reject.lc:1:23: 16in testdata/language-features/basic-list/listcomp08.reject.lc:1:23:
17value = [x | x <- [], "not Bool"] 17value = [x | x <- [], "not Bool"]
diff --git a/testdata/language-features/basic-list/listcomp09.out b/testdata/language-features/basic-list/listcomp09.out
index 694e13a4..55d987eb 100644
--- a/testdata/language-features/basic-list/listcomp09.out
+++ b/testdata/language-features/basic-list/listcomp09.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: {_} -> 'List (()->'String) 3value1 :: {_} -> 'List (()->'String)
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-list/listcomp09.lc 1:1-1:7 {_} -> List (()->String) 5testdata/language-features/basic-list/listcomp09.lc 1:1-1:7 {_} -> List (()->String)
6testdata/language-features/basic-list/listcomp09.lc 1:10-1:36 List (()->String) 6testdata/language-features/basic-list/listcomp09.lc 1:10-1:36 List (()->String)
diff --git a/testdata/language-features/basic-values/bool01.out b/testdata/language-features/basic-values/bool01.out
index 5e43b4e6..a78cfe8f 100644
--- a/testdata/language-features/basic-values/bool01.out
+++ b/testdata/language-features/basic-values/bool01.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: 'Bool 3value1 :: 'Bool
4value2 :: 'Bool 4value2 :: 'Bool
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/bool01.lc 1:1-1:7 Bool 6testdata/language-features/basic-values/bool01.lc 1:1-1:7 Bool
7testdata/language-features/basic-values/bool01.lc 1:10-1:14 Bool 7testdata/language-features/basic-values/bool01.lc 1:10-1:14 Bool
diff --git a/testdata/language-features/basic-values/case01.out b/testdata/language-features/basic-values/case01.out
index 828801f4..1cbce892 100644
--- a/testdata/language-features/basic-values/case01.out
+++ b/testdata/language-features/basic-values/case01.out
@@ -1,11 +1,11 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: () 3value1 :: ()
4value2 :: () 4value2 :: ()
5value3 :: () 5value3 :: ()
6value4 :: () 6value4 :: ()
7value5 :: () 7value5 :: ()
8value6 :: () 8value6 :: ()
9------------ tooltips 9------------ tooltips
10testdata/language-features/basic-values/case01.lc 1:1-1:7 () 10testdata/language-features/basic-values/case01.lc 1:1-1:7 ()
11testdata/language-features/basic-values/case01.lc 1:10-1:29 () 11testdata/language-features/basic-values/case01.lc 1:10-1:29 ()
diff --git a/testdata/language-features/basic-values/case02.out b/testdata/language-features/basic-values/case02.out
index b6d80b67..5c602ef2 100644
--- a/testdata/language-features/basic-values/case02.out
+++ b/testdata/language-features/basic-values/case02.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a}->() 3value1 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a}->()
4value2 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> {_ : 'Eq a} -> {_ : 'Num a}->'String 4value2 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> {_ : 'Eq a} -> {_ : 'Num a}->'String
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/case02.lc 1:1-1:7 {a} -> {_ : Eq a} -> {_ : Num a}->() 6testdata/language-features/basic-values/case02.lc 1:1-1:7 {a} -> {_ : Eq a} -> {_ : Num a}->()
7testdata/language-features/basic-values/case02.lc 1:10-3:10 () 7testdata/language-features/basic-values/case02.lc 1:10-3:10 ()
diff --git a/testdata/language-features/basic-values/case04.reject.out b/testdata/language-features/basic-values/case04.reject.out
index 426c62f7..7bb41248 100644
--- a/testdata/language-features/basic-values/case04.reject.out
+++ b/testdata/language-features/basic-values/case04.reject.out
@@ -1,7 +1,7 @@
1type error: can not unify 1type error: can not unify
2() 2()
3with 3with
4'Char 4'Char
5 5
6in testdata/language-features/basic-values/case04.reject.lc:2:8: 6in testdata/language-features/basic-values/case04.reject.lc:2:8:
7 1 -> '1' 7 1 -> '1'
@@ -9,9 +9,9 @@ in testdata/language-features/basic-values/case04.reject.lc:2:8:
9 9
10------------ trace 10------------ trace
11!type error: can not unify 11!type error: can not unify
12() 12()
13with 13with
14'Char 14'Char
15 15
16in testdata/language-features/basic-values/case04.reject.lc:2:8: 16in testdata/language-features/basic-values/case04.reject.lc:2:8:
17 1 -> '1' 17 1 -> '1'
diff --git a/testdata/language-features/basic-values/case05.out b/testdata/language-features/basic-values/case05.out
index 40113fde..85e6bced 100644
--- a/testdata/language-features/basic-values/case05.out
+++ b/testdata/language-features/basic-values/case05.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char 3value :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/case05.lc 1:1-1:6 {a} -> {_ : Eq a} -> {_ : Num a} -> a->Char 5testdata/language-features/basic-values/case05.lc 1:1-1:6 {a} -> {_ : Eq a} -> {_ : Num a} -> a->Char
6testdata/language-features/basic-values/case05.lc 1:11-2:11 Char 6testdata/language-features/basic-values/case05.lc 1:11-2:11 Char
diff --git a/testdata/language-features/basic-values/case06.out b/testdata/language-features/basic-values/case06.out
index a4959bfe..2867cc57 100644
--- a/testdata/language-features/basic-values/case06.out
+++ b/testdata/language-features/basic-values/case06.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char 3value :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/case06.lc 1:1-1:6 {a} -> {_ : Eq a} -> {_ : Num a} -> a->Char 5testdata/language-features/basic-values/case06.lc 1:1-1:6 {a} -> {_ : Eq a} -> {_ : Num a} -> a->Char
6testdata/language-features/basic-values/case06.lc 1:11-3:11 Char 6testdata/language-features/basic-values/case06.lc 1:11-3:11 Char
diff --git a/testdata/language-features/basic-values/data01.out b/testdata/language-features/basic-values/data01.out
index 55a3f99f..a44de4d8 100644
--- a/testdata/language-features/basic-values/data01.out
+++ b/testdata/language-features/basic-values/data01.out
@@ -1,23 +1,23 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3'A :: Type 3'A :: Type
4B :: 'A 4B :: 'A
5C :: 'A 5C :: 'A
6D :: 'A 6D :: 'A
7'ACase :: (a : 'A->Type) -> a B -> a C -> a D -> (b:'A) -> a b 7'ACase :: (a : 'A->Type) -> a B -> a C -> a D -> (b:'A) -> a b
8match'A :: (a : Type->Type) -> a 'A -> (b:Type) -> a b -> a b 8match'A :: (a : Type->Type) -> a 'A -> (b:Type) -> a b -> a b
9'E :: Type 9'E :: Type
10F :: 'E 10F :: 'E
11G :: ()->'E 11G :: ()->'E
12H :: 'E 12H :: 'E
13'ECase :: (a : 'E->Type) -> a F -> ((b:()) -> a (G b)) -> a H -> (c:'E) -> a c 13'ECase :: (a : 'E->Type) -> a F -> ((b:()) -> a (G b)) -> a H -> (c:'E) -> a c
14match'E :: (a : Type->Type) -> a 'E -> (b:Type) -> a b -> a b 14match'E :: (a : Type->Type) -> a 'E -> (b:Type) -> a b -> a b
15'D1 :: Type 15'D1 :: Type
16C1 :: 'D1 16C1 :: 'D1
17C2 :: ()->'D1 17C2 :: ()->'D1
18C3 :: 'D1 18C3 :: 'D1
19'D1Case :: (a : 'D1->Type) -> a C1 -> ((b:()) -> a (C2 b)) -> a C3 -> (c:'D1) -> a c 19'D1Case :: (a : 'D1->Type) -> a C1 -> ((b:()) -> a (C2 b)) -> a C3 -> (c:'D1) -> a c
20match'D1 :: (a : Type->Type) -> a 'D1 -> (b:Type) -> a b -> a b 20match'D1 :: (a : Type->Type) -> a 'D1 -> (b:Type) -> a b -> a b
21------------ tooltips 21------------ tooltips
22testdata/language-features/basic-values/data01.lc 1:6-1:7 Type 22testdata/language-features/basic-values/data01.lc 1:6-1:7 Type
23testdata/language-features/basic-values/data01.lc 1:6-1:13 Type 23testdata/language-features/basic-values/data01.lc 1:6-1:13 Type
diff --git a/testdata/language-features/basic-values/def01.out b/testdata/language-features/basic-values/def01.out
index 1bec17b3..4fa69d6c 100644
--- a/testdata/language-features/basic-values/def01.out
+++ b/testdata/language-features/basic-values/def01.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3unit :: () 3unit :: ()
4fun1 :: {a} -> {b} -> {_ : 'Num b} -> a->b 4fun1 :: {a} -> {b} -> {_ : 'Num b} -> a->b
5fun2 :: {a} -> {b} -> {c} -> {d} -> {e} -> a -> b -> c -> d -> e->'Char 5fun2 :: {a} -> {b} -> {c} -> {d} -> {e} -> a -> b -> c -> d -> e->'Char
6------------ tooltips 6------------ tooltips
7testdata/language-features/basic-values/def01.lc 1:1-1:5 () 7testdata/language-features/basic-values/def01.lc 1:1-1:5 ()
8testdata/language-features/basic-values/def01.lc 1:8-1:10 () 8testdata/language-features/basic-values/def01.lc 1:8-1:10 ()
diff --git a/testdata/language-features/basic-values/def03.out b/testdata/language-features/basic-values/def03.out
index 6a383d9c..ba33b297 100644
--- a/testdata/language-features/basic-values/def03.out
+++ b/testdata/language-features/basic-values/def03.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char 3fun :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/def03.lc 1:1-1:4 {a} -> {_ : Eq a} -> {_ : Num a} -> {_ : Eq a} -> {_ : Num a} -> a->Char 5testdata/language-features/basic-values/def03.lc 1:1-1:4 {a} -> {_ : Eq a} -> {_ : Num a} -> {_ : Eq a} -> {_ : Num a} -> a->Char
6testdata/language-features/basic-values/def03.lc 1:9-1:12 Char 6testdata/language-features/basic-values/def03.lc 1:9-1:12 Char
diff --git a/testdata/language-features/basic-values/def04.out b/testdata/language-features/basic-values/def04.out
index b2977f8e..9b3e36f2 100644
--- a/testdata/language-features/basic-values/def04.out
+++ b/testdata/language-features/basic-values/def04.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char 3fun :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char
4fun2 :: {a} -> {b} -> {_ : 'Eq a} -> {_ : 'Num a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a -> b->'Char 4fun2 :: {a} -> {b} -> {_ : 'Eq a} -> {_ : 'Num a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a -> b->'Char
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/def04.lc 1:1-1:4 {a} -> {_ : Eq a} -> {_ : Num a} -> {_ : Eq a} -> {_ : Num a} -> a->Char 6testdata/language-features/basic-values/def04.lc 1:1-1:4 {a} -> {_ : Eq a} -> {_ : Num a} -> {_ : Eq a} -> {_ : Num a} -> a->Char
7testdata/language-features/basic-values/def04.lc 1:9-1:12 Char 7testdata/language-features/basic-values/def04.lc 1:9-1:12 Char
diff --git a/testdata/language-features/basic-values/def07.reject.out b/testdata/language-features/basic-values/def07.reject.out
index ecd42e2a..0ce641f7 100644
--- a/testdata/language-features/basic-values/def07.reject.out
+++ b/testdata/language-features/basic-values/def07.reject.out
@@ -5,9 +5,9 @@ fun _ = '_'
5fun 1 = '1' 5fun 1 = '1'
6^^^ 6^^^
7------------ trace 7------------ trace
8fun :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char 8fun :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char
9fun2 :: {a} -> {b} -> {_ : 'Eq a} -> {_ : 'Num a} -> a -> b->'Char 9fun2 :: {a} -> {b} -> {_ : 'Eq a} -> {_ : 'Num a} -> a -> b->'Char
10fun :: {a} -> a->'Char 10fun :: {a} -> a->'Char
11!already defined fun at testdata/language-features/basic-values/def07.reject.lc:4:1: 11!already defined fun at testdata/language-features/basic-values/def07.reject.lc:4:1:
12fun _ = '_' 12fun _ = '_'
13^^^ 13^^^
diff --git a/testdata/language-features/basic-values/deforder01.out b/testdata/language-features/basic-values/deforder01.out
index f0e01c94..5dd94137 100644
--- a/testdata/language-features/basic-values/deforder01.out
+++ b/testdata/language-features/basic-values/deforder01.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3x :: 'Char 3x :: 'Char
4y :: 'Char 4y :: 'Char
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/deforder01.lc 1:1-1:2 Char 6testdata/language-features/basic-values/deforder01.lc 1:1-1:2 Char
7testdata/language-features/basic-values/deforder01.lc 1:5-1:8 Char 7testdata/language-features/basic-values/deforder01.lc 1:5-1:8 Char
diff --git a/testdata/language-features/basic-values/deforder02.out b/testdata/language-features/basic-values/deforder02.out
index 0466faf4..473b93ff 100644
--- a/testdata/language-features/basic-values/deforder02.out
+++ b/testdata/language-features/basic-values/deforder02.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3x :: 'Char 3x :: 'Char
4y :: 'Char 4y :: 'Char
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/deforder02.lc 1:1-1:2 Char 6testdata/language-features/basic-values/deforder02.lc 1:1-1:2 Char
7testdata/language-features/basic-values/deforder02.lc 1:5-1:6 Char 7testdata/language-features/basic-values/deforder02.lc 1:5-1:6 Char
diff --git a/testdata/language-features/basic-values/deforder03.out b/testdata/language-features/basic-values/deforder03.out
index dc85017c..f7c5fa08 100644
--- a/testdata/language-features/basic-values/deforder03.out
+++ b/testdata/language-features/basic-values/deforder03.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'Char 3value :: 'Char
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/deforder03.lc 1:1-1:6 Char 5testdata/language-features/basic-values/deforder03.lc 1:1-1:6 Char
6testdata/language-features/basic-values/deforder03.lc 1:17-1:19 () 6testdata/language-features/basic-values/deforder03.lc 1:17-1:19 ()
diff --git a/testdata/language-features/basic-values/deforder04.out b/testdata/language-features/basic-values/deforder04.out
index b65d9892..430a18c3 100644
--- a/testdata/language-features/basic-values/deforder04.out
+++ b/testdata/language-features/basic-values/deforder04.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'Char 3value :: 'Char
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/deforder04.lc 1:1-1:6 Char 5testdata/language-features/basic-values/deforder04.lc 1:1-1:6 Char
6testdata/language-features/basic-values/deforder04.lc 1:17-1:18 () 6testdata/language-features/basic-values/deforder04.lc 1:17-1:18 ()
diff --git a/testdata/language-features/basic-values/deforder05.out b/testdata/language-features/basic-values/deforder05.out
index 66e45676..59230da2 100644
--- a/testdata/language-features/basic-values/deforder05.out
+++ b/testdata/language-features/basic-values/deforder05.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'Char 3value :: 'Char
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/deforder05.lc 1:1-1:6 Char 5testdata/language-features/basic-values/deforder05.lc 1:1-1:6 Char
6testdata/language-features/basic-values/deforder05.lc 1:9-1:12 Char 6testdata/language-features/basic-values/deforder05.lc 1:9-1:12 Char
diff --git a/testdata/language-features/basic-values/deforder06.out b/testdata/language-features/basic-values/deforder06.out
index 706bb6a6..55bffe51 100644
--- a/testdata/language-features/basic-values/deforder06.out
+++ b/testdata/language-features/basic-values/deforder06.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'Char 3value :: 'Char
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/deforder06.lc 1:1-1:6 Char 5testdata/language-features/basic-values/deforder06.lc 1:1-1:6 Char
6testdata/language-features/basic-values/deforder06.lc 1:9-1:12 Char 6testdata/language-features/basic-values/deforder06.lc 1:9-1:12 Char
diff --git a/testdata/language-features/basic-values/fixity01.out b/testdata/language-features/basic-values/fixity01.out
index 56d4a7db..4d3a5cf9 100644
--- a/testdata/language-features/basic-values/fixity01.out
+++ b/testdata/language-features/basic-values/fixity01.out
@@ -1,9 +1,9 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3funL :: {a} -> {b} -> a -> b->a 3funL :: {a} -> {b} -> a -> b->a
4funR :: {a} -> {b} -> a -> b->a 4funR :: {a} -> {b} -> a -> b->a
5<<<< :: {a} -> {b} -> a -> b->a 5<<<< :: {a} -> {b} -> a -> b->a
6>>>> :: {a} -> {b} -> a -> b->b 6>>>> :: {a} -> {b} -> a -> b->b
7------------ tooltips 7------------ tooltips
8testdata/language-features/basic-values/fixity01.lc 1:1-1:5 {a} -> {b} -> a -> b->a 8testdata/language-features/basic-values/fixity01.lc 1:1-1:5 {a} -> {b} -> a -> b->a
9testdata/language-features/basic-values/fixity01.lc 1:12-1:13 d_ 9testdata/language-features/basic-values/fixity01.lc 1:12-1:13 d_
diff --git a/testdata/language-features/basic-values/fixity02.out b/testdata/language-features/basic-values/fixity02.out
index 0b15ed06..6683f3d9 100644
--- a/testdata/language-features/basic-values/fixity02.out
+++ b/testdata/language-features/basic-values/fixity02.out
@@ -1,25 +1,25 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3funL :: {a} -> {b} -> a -> b->a 3funL :: {a} -> {b} -> a -> b->a
4funR :: {a} -> {b} -> a -> b->b 4funR :: {a} -> {b} -> a -> b->b
5<@ :: {a} -> {b} -> a -> b->a 5<@ :: {a} -> {b} -> a -> b->a
6@> :: {a} -> {b} -> a -> b->b 6@> :: {a} -> {b} -> a -> b->b
7value1 :: 'Float 7value1 :: 'Float
8value2 :: 'Float 8value2 :: 'Float
9value3 :: 'Float 9value3 :: 'Float
10value4 :: 'Float 10value4 :: 'Float
11value5 :: 'String 11value5 :: 'String
12value6 :: 'Char 12value6 :: 'Char
13value7 :: 'String 13value7 :: 'String
14value8 :: () 14value8 :: ()
15funValue1 :: 'Float 15funValue1 :: 'Float
16funValue2 :: 'Float 16funValue2 :: 'Float
17funValue3 :: 'Float 17funValue3 :: 'Float
18funValue4 :: 'Float 18funValue4 :: 'Float
19funValue5 :: 'String 19funValue5 :: 'String
20funValue6 :: 'Char 20funValue6 :: 'Char
21funValue7 :: 'String 21funValue7 :: 'String
22funValue8 :: () 22funValue8 :: ()
23------------ tooltips 23------------ tooltips
24testdata/language-features/basic-values/fixity02.lc 1:1-1:5 {a} -> {b} -> a -> b->a 24testdata/language-features/basic-values/fixity02.lc 1:1-1:5 {a} -> {b} -> a -> b->a
25testdata/language-features/basic-values/fixity02.lc 1:12-1:13 d_ 25testdata/language-features/basic-values/fixity02.lc 1:12-1:13 d_
diff --git a/testdata/language-features/basic-values/if01.out b/testdata/language-features/basic-values/if01.out
index c04dd993..d9211a28 100644
--- a/testdata/language-features/basic-values/if01.out
+++ b/testdata/language-features/basic-values/if01.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: () 3value1 :: ()
4value2 :: 'Float 4value2 :: 'Float
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/if01.lc 1:1-1:7 () 6testdata/language-features/basic-values/if01.lc 1:1-1:7 ()
7testdata/language-features/basic-values/if01.lc 1:10-1:33 () 7testdata/language-features/basic-values/if01.lc 1:10-1:33 ()
diff --git a/testdata/language-features/basic-values/if03.reject.out b/testdata/language-features/basic-values/if03.reject.out
index aeb988f9..83ed5e90 100644
--- a/testdata/language-features/basic-values/if03.reject.out
+++ b/testdata/language-features/basic-values/if03.reject.out
@@ -1,7 +1,7 @@
1type error: can not unify 1type error: can not unify
2'Bool 2'Bool
3with 3with
4() 4()
5 5
6in testdata/language-features/basic-values/if03.reject.lc:1:13: 6in testdata/language-features/basic-values/if03.reject.lc:1:13:
7value1 = if () then () else () 7value1 = if () then () else ()
@@ -9,9 +9,9 @@ value1 = if () then () else ()
9 9
10------------ trace 10------------ trace
11!type error: can not unify 11!type error: can not unify
12'Bool 12'Bool
13with 13with
14() 14()
15 15
16in testdata/language-features/basic-values/if03.reject.lc:1:13: 16in testdata/language-features/basic-values/if03.reject.lc:1:13:
17value1 = if () then () else () 17value1 = if () then () else ()
diff --git a/testdata/language-features/basic-values/if04.reject.out b/testdata/language-features/basic-values/if04.reject.out
index d882b6a8..eed0fc59 100644
--- a/testdata/language-features/basic-values/if04.reject.out
+++ b/testdata/language-features/basic-values/if04.reject.out
@@ -1,7 +1,7 @@
1type error: can not unify 1type error: can not unify
2() 2()
3with 3with
4'Char 4'Char
5 5
6in testdata/language-features/basic-values/if04.reject.lc:1:31: 6in testdata/language-features/basic-values/if04.reject.lc:1:31:
7value1 = if True then () else '_' 7value1 = if True then () else '_'
@@ -9,9 +9,9 @@ value1 = if True then () else '_'
9 9
10------------ trace 10------------ trace
11!type error: can not unify 11!type error: can not unify
12() 12()
13with 13with
14'Char 14'Char
15 15
16in testdata/language-features/basic-values/if04.reject.lc:1:31: 16in testdata/language-features/basic-values/if04.reject.lc:1:31:
17value1 = if True then () else '_' 17value1 = if True then () else '_'
diff --git a/testdata/language-features/basic-values/indentation01.out b/testdata/language-features/basic-values/indentation01.out
index 0139b3c5..3893683c 100644
--- a/testdata/language-features/basic-values/indentation01.out
+++ b/testdata/language-features/basic-values/indentation01.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3tuple1 :: () 3tuple1 :: ()
4tuple2 :: () 4tuple2 :: ()
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/indentation01.lc 1:1-1:7 () 6testdata/language-features/basic-values/indentation01.lc 1:1-1:7 ()
7testdata/language-features/basic-values/indentation01.lc 1:10-1:12 () 7testdata/language-features/basic-values/indentation01.lc 1:10-1:12 ()
diff --git a/testdata/language-features/basic-values/indentation02.out b/testdata/language-features/basic-values/indentation02.out
index 64809a57..c6fd7aad 100644
--- a/testdata/language-features/basic-values/indentation02.out
+++ b/testdata/language-features/basic-values/indentation02.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3tuple1 :: () 3tuple1 :: ()
4tuple2 :: () 4tuple2 :: ()
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/indentation02.lc 1:3-1:9 () 6testdata/language-features/basic-values/indentation02.lc 1:3-1:9 ()
7testdata/language-features/basic-values/indentation02.lc 1:12-1:14 () 7testdata/language-features/basic-values/indentation02.lc 1:12-1:14 ()
diff --git a/testdata/language-features/basic-values/infix01.out b/testdata/language-features/basic-values/infix01.out
index 46bcea65..d4e62854 100644
--- a/testdata/language-features/basic-values/infix01.out
+++ b/testdata/language-features/basic-values/infix01.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: {a} -> {b} -> a -> b->() 3fun :: {a} -> {b} -> a -> b->()
4value :: {a} -> {b} -> a -> b->() 4value :: {a} -> {b} -> a -> b->()
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/infix01.lc 1:1-1:4 {a} -> {b} -> a -> b->() 6testdata/language-features/basic-values/infix01.lc 1:1-1:4 {a} -> {b} -> a -> b->()
7testdata/language-features/basic-values/infix01.lc 1:11-1:13 () 7testdata/language-features/basic-values/infix01.lc 1:11-1:13 ()
diff --git a/testdata/language-features/basic-values/infix02.out b/testdata/language-features/basic-values/infix02.out
index ced1c18a..16d50a6f 100644
--- a/testdata/language-features/basic-values/infix02.out
+++ b/testdata/language-features/basic-values/infix02.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: {a} -> {b} -> {c} -> a -> b -> c->() 3fun :: {a} -> {b} -> {c} -> a -> b -> c->()
4value :: {a} -> {b} -> {c} -> a -> b -> c->() 4value :: {a} -> {b} -> {c} -> a -> b -> c->()
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/infix02.lc 1:1-1:4 {a} -> {b} -> {c} -> a -> b -> c->() 6testdata/language-features/basic-values/infix02.lc 1:1-1:4 {a} -> {b} -> {c} -> a -> b -> c->()
7testdata/language-features/basic-values/infix02.lc 1:13-1:15 () 7testdata/language-features/basic-values/infix02.lc 1:13-1:15 ()
diff --git a/testdata/language-features/basic-values/infix03.out b/testdata/language-features/basic-values/infix03.out
index 31c99f85..dcdc1bb6 100644
--- a/testdata/language-features/basic-values/infix03.out
+++ b/testdata/language-features/basic-values/infix03.out
@@ -1,12 +1,12 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3'D :: Type 3'D :: Type
4D2 :: () -> ()->'D 4D2 :: () -> ()->'D
5D3 :: () -> () -> ()->'D 5D3 :: () -> () -> ()->'D
6'DCase :: (a : 'D->Type) -> ((b:()) -> (c:()) -> a (D2 b c)) -> ((d:()) -> (e:()) -> (f:()) -> a (D3 d e f)) -> (g:'D) -> a g 6'DCase :: (a : 'D->Type) -> ((b:()) -> (c:()) -> a (D2 b c)) -> ((d:()) -> (e:()) -> (f:()) -> a (D3 d e f)) -> (g:'D) -> a g
7match'D :: (a : Type->Type) -> a 'D -> (b:Type) -> a b -> a b 7match'D :: (a : Type->Type) -> a 'D -> (b:Type) -> a b -> a b
8d2 :: () -> ()->'D 8d2 :: () -> ()->'D
9d3 :: () -> () -> ()->'D 9d3 :: () -> () -> ()->'D
10------------ tooltips 10------------ tooltips
11testdata/language-features/basic-values/infix03.lc 1:6-1:7 Type 11testdata/language-features/basic-values/infix03.lc 1:6-1:7 Type
12testdata/language-features/basic-values/infix03.lc 1:6-1:18 Type 12testdata/language-features/basic-values/infix03.lc 1:6-1:18 Type
diff --git a/testdata/language-features/basic-values/lambda01.out b/testdata/language-features/basic-values/lambda01.out
index 5acf2c1d..14711679 100644
--- a/testdata/language-features/basic-values/lambda01.out
+++ b/testdata/language-features/basic-values/lambda01.out
@@ -1,9 +1,9 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun1 :: {a} -> a->() 3fun1 :: {a} -> a->()
4fun2 :: {a} -> a->() 4fun2 :: {a} -> a->()
5fun3 :: {a} -> a->() 5fun3 :: {a} -> a->()
6fun4 :: {a} -> {b} -> {c} -> {d} -> {e} -> {f} -> {g} -> {h} -> {i} -> a -> b -> c -> d -> e -> f -> g -> h -> i->() 6fun4 :: {a} -> {b} -> {c} -> {d} -> {e} -> {f} -> {g} -> {h} -> {i} -> a -> b -> c -> d -> e -> f -> g -> h -> i->()
7------------ tooltips 7------------ tooltips
8testdata/language-features/basic-values/lambda01.lc 1:1-1:5 {a} -> a->() 8testdata/language-features/basic-values/lambda01.lc 1:1-1:5 {a} -> a->()
9testdata/language-features/basic-values/lambda01.lc 1:14-1:16 () 9testdata/language-features/basic-values/lambda01.lc 1:14-1:16 ()
diff --git a/testdata/language-features/basic-values/lambda03.out b/testdata/language-features/basic-values/lambda03.out
index deb16da9..7d9a98ae 100644
--- a/testdata/language-features/basic-values/lambda03.out
+++ b/testdata/language-features/basic-values/lambda03.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun1 :: {a} -> {b} -> {c} -> a -> b -> c->b 3fun1 :: {a} -> {b} -> {c} -> a -> b -> c->b
4fun2 :: {a} -> {b} -> {c} -> {d} -> a -> b -> c -> d->a 4fun2 :: {a} -> {b} -> {c} -> {d} -> a -> b -> c -> d->a
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/lambda03.lc 1:1-1:5 {a} -> {b} -> {c} -> a -> b -> c->b 6testdata/language-features/basic-values/lambda03.lc 1:1-1:5 {a} -> {b} -> {c} -> a -> b -> c->b
7testdata/language-features/basic-values/lambda03.lc 1:22-1:23 d_ 7testdata/language-features/basic-values/lambda03.lc 1:22-1:23 d_
diff --git a/testdata/language-features/basic-values/let01.out b/testdata/language-features/basic-values/let01.out
index da61b7a6..4c4793b6 100644
--- a/testdata/language-features/basic-values/let01.out
+++ b/testdata/language-features/basic-values/let01.out
@@ -1,10 +1,10 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: {a} -> {_ : 'Num a}->a 3value1 :: {a} -> {_ : 'Num a}->a
4value2 :: {a} -> {_ : 'Num a}->a 4value2 :: {a} -> {_ : 'Num a}->a
5value3 :: {a} -> {_ : 'Num a}->a 5value3 :: {a} -> {_ : 'Num a}->a
6value4 :: {a} -> {_ : 'Num a}->a 6value4 :: {a} -> {_ : 'Num a}->a
7value5 :: {a} -> {_ : 'Num a}->a 7value5 :: {a} -> {_ : 'Num a}->a
8------------ tooltips 8------------ tooltips
9testdata/language-features/basic-values/let01.lc 1:1-1:7 {a} -> {_ : Num a}->a 9testdata/language-features/basic-values/let01.lc 1:1-1:7 {a} -> {_ : Num a}->a
10testdata/language-features/basic-values/let01.lc 1:18-1:19 b_ 10testdata/language-features/basic-values/let01.lc 1:18-1:19 b_
diff --git a/testdata/language-features/basic-values/let02.out b/testdata/language-features/basic-values/let02.out
index 164dd687..95f6541e 100644
--- a/testdata/language-features/basic-values/let02.out
+++ b/testdata/language-features/basic-values/let02.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: () 3value :: ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/let02.lc 1:1-1:6 () 5testdata/language-features/basic-values/let02.lc 1:1-1:6 ()
6testdata/language-features/basic-values/let02.lc 2:11-2:13 () 6testdata/language-features/basic-values/let02.lc 2:11-2:13 ()
diff --git a/testdata/language-features/basic-values/literal01.out b/testdata/language-features/basic-values/literal01.out
index 65202fb6..dd36d512 100644
--- a/testdata/language-features/basic-values/literal01.out
+++ b/testdata/language-features/basic-values/literal01.out
@@ -1,13 +1,13 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3intValue1 :: {a} -> {_ : 'Num a}->a 3intValue1 :: {a} -> {_ : 'Num a}->a
4intValue2 :: {a} -> {_ : 'Num a}->a 4intValue2 :: {a} -> {_ : 'Num a}->a
5intValue3 :: {a} -> {_ : 'Num a}->a 5intValue3 :: {a} -> {_ : 'Num a}->a
6floatValue1 :: 'Float 6floatValue1 :: 'Float
7floatValue2 :: 'Float 7floatValue2 :: 'Float
8charValue :: 'Char 8charValue :: 'Char
9stringValue1 :: 'String 9stringValue1 :: 'String
10stringValue2 :: 'String 10stringValue2 :: 'String
11------------ tooltips 11------------ tooltips
12testdata/language-features/basic-values/literal01.lc 1:1-1:10 {a} -> {_ : Num a}->a 12testdata/language-features/basic-values/literal01.lc 1:1-1:10 {a} -> {_ : Num a}->a
13testdata/language-features/basic-values/literal01.lc 1:13-1:14 b_ 13testdata/language-features/basic-values/literal01.lc 1:13-1:14 b_
diff --git a/testdata/language-features/basic-values/operator01.out b/testdata/language-features/basic-values/operator01.out
index b17e33e0..78e55853 100644
--- a/testdata/language-features/basic-values/operator01.out
+++ b/testdata/language-features/basic-values/operator01.out
@@ -1,9 +1,9 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3#$# :: {a} -> {b} -> a -> b->() 3#$# :: {a} -> {b} -> a -> b->()
4$$# :: {a} -> {b} -> a -> b->() 4$$# :: {a} -> {b} -> a -> b->()
5$$$# :: {a} -> {b} -> a -> b->() 5$$$# :: {a} -> {b} -> a -> b->()
6$$$ :: {a} -> {b} -> a -> b->() 6$$$ :: {a} -> {b} -> a -> b->()
7------------ tooltips 7------------ tooltips
8testdata/language-features/basic-values/operator01.lc 1:3-1:6 {a} -> {b} -> a -> b->() 8testdata/language-features/basic-values/operator01.lc 1:3-1:6 {a} -> {b} -> a -> b->()
9testdata/language-features/basic-values/operator01.lc 1:11-1:13 () 9testdata/language-features/basic-values/operator01.lc 1:11-1:13 ()
diff --git a/testdata/language-features/basic-values/operator02.reject.out b/testdata/language-features/basic-values/operator02.reject.out
index 31d8ce8c..8e5ed72c 100644
--- a/testdata/language-features/basic-values/operator02.reject.out
+++ b/testdata/language-features/basic-values/operator02.reject.out
@@ -5,9 +5,9 @@ a #$# b = ()
5a #$# b = () 5a #$# b = ()
6 ^^^ 6 ^^^
7------------ trace 7------------ trace
8#$# :: {a} -> {b} -> a -> b->() 8#$# :: {a} -> {b} -> a -> b->()
9fun :: {a} -> a->() 9fun :: {a} -> a->()
10#$# :: {a} -> {b} -> a -> b->() 10#$# :: {a} -> {b} -> a -> b->()
11!already defined #$# at testdata/language-features/basic-values/operator02.reject.lc:3:3: 11!already defined #$# at testdata/language-features/basic-values/operator02.reject.lc:3:3:
12a #$# b = () 12a #$# b = ()
13 ^^^ 13 ^^^
diff --git a/testdata/language-features/basic-values/operator05.out b/testdata/language-features/basic-values/operator05.out
index 30bd0d85..16c940fc 100644
--- a/testdata/language-features/basic-values/operator05.out
+++ b/testdata/language-features/basic-values/operator05.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: () 3value1 :: ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/operator05.lc 1:1-1:7 () 5testdata/language-features/basic-values/operator05.lc 1:1-1:7 ()
6testdata/language-features/basic-values/operator05.lc 1:24-1:26 () 6testdata/language-features/basic-values/operator05.lc 1:24-1:26 ()
diff --git a/testdata/language-features/basic-values/operator06.out b/testdata/language-features/basic-values/operator06.out
index 3aaac182..c37005c3 100644
--- a/testdata/language-features/basic-values/operator06.out
+++ b/testdata/language-features/basic-values/operator06.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: () 3value1 :: ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/operator06.lc 1:1-1:7 () 5testdata/language-features/basic-values/operator06.lc 1:1-1:7 ()
6testdata/language-features/basic-values/operator06.lc 1:10-1:12 () 6testdata/language-features/basic-values/operator06.lc 1:10-1:12 ()
diff --git a/testdata/language-features/basic-values/redefine01.reject.out b/testdata/language-features/basic-values/redefine01.reject.out
index b532c14d..04a3868f 100644
--- a/testdata/language-features/basic-values/redefine01.reject.out
+++ b/testdata/language-features/basic-values/redefine01.reject.out
@@ -5,9 +5,9 @@ unit = ()
5unit = () 5unit = ()
6^^^^ 6^^^^
7------------ trace 7------------ trace
8unit :: () 8unit :: ()
9tuple :: () 9tuple :: ()
10unit :: () 10unit :: ()
11!already defined unit at testdata/language-features/basic-values/redefine01.reject.lc:3:1: 11!already defined unit at testdata/language-features/basic-values/redefine01.reject.lc:3:1:
12unit = () 12unit = ()
13^^^^ 13^^^^
diff --git a/testdata/language-features/basic-values/shadowing01.out b/testdata/language-features/basic-values/shadowing01.out
index 9208919f..dad7b72b 100644
--- a/testdata/language-features/basic-values/shadowing01.out
+++ b/testdata/language-features/basic-values/shadowing01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'Char 3value :: 'Char
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/shadowing01.lc 1:1-1:6 Char 5testdata/language-features/basic-values/shadowing01.lc 1:1-1:6 Char
6testdata/language-features/basic-values/shadowing01.lc 2:11-2:14 Char 6testdata/language-features/basic-values/shadowing01.lc 2:11-2:14 Char
diff --git a/testdata/language-features/basic-values/shadowing02.out b/testdata/language-features/basic-values/shadowing02.out
index 22412fea..a3acdba8 100644
--- a/testdata/language-features/basic-values/shadowing02.out
+++ b/testdata/language-features/basic-values/shadowing02.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3c :: {a} -> {_ : 'Num a}->a 3c :: {a} -> {_ : 'Num a}->a
4world :: 'String 4world :: 'String
5value2 :: 'Char 5value2 :: 'Char
6------------ tooltips 6------------ tooltips
7testdata/language-features/basic-values/shadowing02.lc 1:1-1:2 {a} -> {_ : Num a}->a 7testdata/language-features/basic-values/shadowing02.lc 1:1-1:2 {a} -> {_ : Num a}->a
8testdata/language-features/basic-values/shadowing02.lc 1:5-1:6 b_ 8testdata/language-features/basic-values/shadowing02.lc 1:5-1:6 b_
diff --git a/testdata/language-features/basic-values/shadowing03.out b/testdata/language-features/basic-values/shadowing03.out
index 9cedd896..f4b60d48 100644
--- a/testdata/language-features/basic-values/shadowing03.out
+++ b/testdata/language-features/basic-values/shadowing03.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3x :: {a} -> {b} -> a -> b->() 3x :: {a} -> {b} -> a -> b->()
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/shadowing03.lc 1:1-1:2 {a} -> {b} -> a -> b->() 5testdata/language-features/basic-values/shadowing03.lc 1:1-1:2 {a} -> {b} -> a -> b->()
6testdata/language-features/basic-values/shadowing03.lc 1:9-1:11 () 6testdata/language-features/basic-values/shadowing03.lc 1:9-1:11 ()
diff --git a/testdata/language-features/basic-values/shadowing04.out b/testdata/language-features/basic-values/shadowing04.out
index 57eb143c..b1a26817 100644
--- a/testdata/language-features/basic-values/shadowing04.out
+++ b/testdata/language-features/basic-values/shadowing04.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3__ :: {a} -> {b} -> a -> b->() 3__ :: {a} -> {b} -> a -> b->()
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/shadowing04.lc 1:1-1:3 {a} -> {b} -> a -> b->() 5testdata/language-features/basic-values/shadowing04.lc 1:1-1:3 {a} -> {b} -> a -> b->()
6testdata/language-features/basic-values/shadowing04.lc 1:11-1:13 () 6testdata/language-features/basic-values/shadowing04.lc 1:11-1:13 ()
diff --git a/testdata/language-features/basic-values/tuple01.out b/testdata/language-features/basic-values/tuple01.out
index 90607af2..d3a27511 100644
--- a/testdata/language-features/basic-values/tuple01.out
+++ b/testdata/language-features/basic-values/tuple01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3unit :: () 3unit :: ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/tuple01.lc 1:1-1:5 () 5testdata/language-features/basic-values/tuple01.lc 1:1-1:5 ()
6testdata/language-features/basic-values/tuple01.lc 1:8-1:10 () 6testdata/language-features/basic-values/tuple01.lc 1:8-1:10 ()
diff --git a/testdata/language-features/basic-values/tuple02.out b/testdata/language-features/basic-values/tuple02.out
index 01174cb2..90605d50 100644
--- a/testdata/language-features/basic-values/tuple02.out
+++ b/testdata/language-features/basic-values/tuple02.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3tuple1 :: {a} -> {_ : 'Num a}->(a, 'Float, 'Char, 'String, ()) 3tuple1 :: {a} -> {_ : 'Num a}->(a, 'Float, 'Char, 'String, ())
4tuple2 :: ((), ()) 4tuple2 :: ((), ())
5tuple3 :: (('String, 'Char), ()) 5tuple3 :: (('String, 'Char), ())
6------------ tooltips 6------------ tooltips
7testdata/language-features/basic-values/tuple02.lc 1:1-1:7 {a} -> {_ : Num a}->(a, Float, Char, String, ()) 7testdata/language-features/basic-values/tuple02.lc 1:1-1:7 {a} -> {_ : Num a}->(a, Float, Char, String, ())
8testdata/language-features/basic-values/tuple02.lc 1:10-1:33 (b_, Float, Char, String, ()) 8testdata/language-features/basic-values/tuple02.lc 1:10-1:33 (b_, Float, Char, String, ())
diff --git a/testdata/language-features/basic-values/typesig01.out b/testdata/language-features/basic-values/typesig01.out
index 00c7fd81..cd018c6f 100644
--- a/testdata/language-features/basic-values/typesig01.out
+++ b/testdata/language-features/basic-values/typesig01.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: 'Char 3value1 :: 'Char
4value2 :: 'Char 4value2 :: 'Char
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/typesig01.lc 1:11-1:15 Type 6testdata/language-features/basic-values/typesig01.lc 1:11-1:15 Type
7testdata/language-features/basic-values/typesig01.lc 2:1-2:7 Char 7testdata/language-features/basic-values/typesig01.lc 2:1-2:7 Char
diff --git a/testdata/language-features/basic-values/typesig02.out b/testdata/language-features/basic-values/typesig02.out
index b9d5e913..bbaa5075 100644
--- a/testdata/language-features/basic-values/typesig02.out
+++ b/testdata/language-features/basic-values/typesig02.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: 'Char 3value1 :: 'Char
4value2 :: 'Char 4value2 :: 'Char
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/typesig02.lc 1:1-1:7 Char 6testdata/language-features/basic-values/typesig02.lc 1:1-1:7 Char
7testdata/language-features/basic-values/typesig02.lc 1:10-1:13 Char 7testdata/language-features/basic-values/typesig02.lc 1:10-1:13 Char
diff --git a/testdata/language-features/basic-values/typesig03.out b/testdata/language-features/basic-values/typesig03.out
index 17b588bb..49f21cd9 100644
--- a/testdata/language-features/basic-values/typesig03.out
+++ b/testdata/language-features/basic-values/typesig03.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun1 :: {a} -> {b} -> {c} -> a -> b -> c->() 3fun1 :: {a} -> {b} -> {c} -> a -> b -> c->()
4fun2 :: {a} -> {b} -> {c} -> a -> b -> c->() 4fun2 :: {a} -> {b} -> {c} -> a -> b -> c->()
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/typesig03.lc 1:9-1:10 f_ 6testdata/language-features/basic-values/typesig03.lc 1:9-1:10 f_
7testdata/language-features/basic-values/typesig03.lc 1:9-1:26 Type 7testdata/language-features/basic-values/typesig03.lc 1:9-1:26 Type
diff --git a/testdata/language-features/basic-values/typesig04.out b/testdata/language-features/basic-values/typesig04.out
index fe8c7208..0661ca9c 100644
--- a/testdata/language-features/basic-values/typesig04.out
+++ b/testdata/language-features/basic-values/typesig04.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun1 :: {a} -> {b} -> {c} -> a -> (b->c)->() 3fun1 :: {a} -> {b} -> {c} -> a -> (b->c)->()
4fun2 :: {a} -> {b} -> {c} -> a -> (b->c)->() 4fun2 :: {a} -> {b} -> {c} -> a -> (b->c)->()
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/typesig04.lc 1:9-1:10 f_ 6testdata/language-features/basic-values/typesig04.lc 1:9-1:10 f_
7testdata/language-features/basic-values/typesig04.lc 1:9-1:28 Type 7testdata/language-features/basic-values/typesig04.lc 1:9-1:28 Type
diff --git a/testdata/language-features/basic-values/typesig05.out b/testdata/language-features/basic-values/typesig05.out
index 3bd47db6..4c781fa8 100644
--- a/testdata/language-features/basic-values/typesig05.out
+++ b/testdata/language-features/basic-values/typesig05.out
@@ -1,11 +1,11 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3funL :: {a} -> {b} -> a -> b->a 3funL :: {a} -> {b} -> a -> b->a
4funR :: {a} -> {b} -> a -> b->b 4funR :: {a} -> {b} -> a -> b->b
5value1 :: 'Char 5value1 :: 'Char
6value2 :: 'String 6value2 :: 'String
7value3 :: 'Char 7value3 :: 'Char
8value4 :: 'String 8value4 :: 'String
9------------ tooltips 9------------ tooltips
10testdata/language-features/basic-values/typesig05.lc 1:1-1:5 {a} -> {b} -> a -> b->a 10testdata/language-features/basic-values/typesig05.lc 1:1-1:5 {a} -> {b} -> a -> b->a
11testdata/language-features/basic-values/typesig05.lc 1:12-1:13 d_ 11testdata/language-features/basic-values/typesig05.lc 1:12-1:13 d_
diff --git a/testdata/language-features/basic-values/typesig06.out b/testdata/language-features/basic-values/typesig06.out
index 74e9a83b..2335d27b 100644
--- a/testdata/language-features/basic-values/typesig06.out
+++ b/testdata/language-features/basic-values/typesig06.out
@@ -1,9 +1,9 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3funL :: {a} -> {b} -> a -> b->a 3funL :: {a} -> {b} -> a -> b->a
4<@ :: {a} -> {b} -> a -> b->a 4<@ :: {a} -> {b} -> a -> b->a
5value1 :: 'String 5value1 :: 'String
6value2 :: 'String 6value2 :: 'String
7------------ tooltips 7------------ tooltips
8testdata/language-features/basic-values/typesig06.lc 1:1-1:5 {a} -> {b} -> a -> b->a 8testdata/language-features/basic-values/typesig06.lc 1:1-1:5 {a} -> {b} -> a -> b->a
9testdata/language-features/basic-values/typesig06.lc 1:12-1:13 d_ 9testdata/language-features/basic-values/typesig06.lc 1:12-1:13 d_
diff --git a/testdata/language-features/basic-values/typesig07.out b/testdata/language-features/basic-values/typesig07.out
index 705cd6f0..402f8630 100644
--- a/testdata/language-features/basic-values/typesig07.out
+++ b/testdata/language-features/basic-values/typesig07.out
@@ -1,11 +1,11 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: 'Int 3value1 :: 'Int
4value2 :: 'Int 4value2 :: 'Int
5value3 :: 'Int 5value3 :: 'Int
6value4 :: () -> ()->() 6value4 :: () -> ()->()
7@@@ :: () -> ()->() 7@@@ :: () -> ()->()
8value6 :: () -> ()->() 8value6 :: () -> ()->()
9------------ tooltips 9------------ tooltips
10testdata/language-features/basic-values/typesig07.lc 1:27-1:30 Type 10testdata/language-features/basic-values/typesig07.lc 1:27-1:30 Type
11testdata/language-features/basic-values/typesig07.lc 3:1-3:7 Int 11testdata/language-features/basic-values/typesig07.lc 3:1-3:7 Int
diff --git a/testdata/language-features/basic-values/typesyn01.out b/testdata/language-features/basic-values/typesyn01.out
index 3e2d214b..f5bf60cf 100644
--- a/testdata/language-features/basic-values/typesyn01.out
+++ b/testdata/language-features/basic-values/typesyn01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3'MyUnit :: Type 3'MyUnit :: Type
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/typesyn01.lc 1:6-1:12 Type 5testdata/language-features/basic-values/typesyn01.lc 1:6-1:12 Type
6testdata/language-features/basic-values/typesyn01.lc 1:15-1:17 Type 6testdata/language-features/basic-values/typesyn01.lc 1:15-1:17 Type
diff --git a/testdata/language-features/basic-values/typesyn02.out b/testdata/language-features/basic-values/typesyn02.out
index e1d50e47..dc6e687e 100644
--- a/testdata/language-features/basic-values/typesyn02.out
+++ b/testdata/language-features/basic-values/typesyn02.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3'MyUnit :: Type 3'MyUnit :: Type
4fun :: {a} -> a -> ()->() 4fun :: {a} -> a -> ()->()
5------------ tooltips 5------------ tooltips
6testdata/language-features/basic-values/typesyn02.lc 1:6-1:12 Type 6testdata/language-features/basic-values/typesyn02.lc 1:6-1:12 Type
7testdata/language-features/basic-values/typesyn02.lc 1:15-1:17 Type 7testdata/language-features/basic-values/typesyn02.lc 1:15-1:17 Type
diff --git a/testdata/language-features/basic-values/typesyn03.reject.out b/testdata/language-features/basic-values/typesyn03.reject.out
index e55ce30e..c0fb5268 100644
--- a/testdata/language-features/basic-values/typesyn03.reject.out
+++ b/testdata/language-features/basic-values/typesyn03.reject.out
@@ -5,8 +5,8 @@ type MyUnit = ()
5type MyUnit = () 5type MyUnit = ()
6 ^^^^^^ 6 ^^^^^^
7------------ trace 7------------ trace
8'MyUnit :: Type 8'MyUnit :: Type
9'MyUnit :: Type 9'MyUnit :: Type
10!already defined 'MyUnit at testdata/language-features/basic-values/typesyn03.reject.lc:2:6: 10!already defined 'MyUnit at testdata/language-features/basic-values/typesyn03.reject.lc:2:6:
11type MyUnit = () 11type MyUnit = ()
12 ^^^^^^ 12 ^^^^^^
diff --git a/testdata/language-features/basic-values/typesyn04.reject.out b/testdata/language-features/basic-values/typesyn04.reject.out
index 6e93a12a..c903ddb8 100644
--- a/testdata/language-features/basic-values/typesyn04.reject.out
+++ b/testdata/language-features/basic-values/typesyn04.reject.out
@@ -5,8 +5,8 @@ type MyUnit = ()
5type MyUnit = () 5type MyUnit = ()
6 ^^^^^^ 6 ^^^^^^
7------------ trace 7------------ trace
8'MyUnit :: Type 8'MyUnit :: Type
9'MyUnit :: Type 9'MyUnit :: Type
10!already defined 'MyUnit at testdata/language-features/basic-values/typesyn04.reject.lc:2:6: 10!already defined 'MyUnit at testdata/language-features/basic-values/typesyn04.reject.lc:2:6:
11type MyUnit = () 11type MyUnit = ()
12 ^^^^^^ 12 ^^^^^^
diff --git a/testdata/language-features/basic-values/where01.out b/testdata/language-features/basic-values/where01.out
index 201bbf0a..11498269 100644
--- a/testdata/language-features/basic-values/where01.out
+++ b/testdata/language-features/basic-values/where01.out
@@ -1,16 +1,16 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: () 3value1 :: ()
4value2 :: () 4value2 :: ()
5value3 :: () 5value3 :: ()
6value4 :: () 6value4 :: ()
7value5 :: () 7value5 :: ()
8value6 :: () 8value6 :: ()
9value7 :: () 9value7 :: ()
10value8 :: () 10value8 :: ()
11value9 :: () 11value9 :: ()
12value10 :: () 12value10 :: ()
13value11 :: () 13value11 :: ()
14------------ tooltips 14------------ tooltips
15testdata/language-features/basic-values/where01.lc 1:1-1:7 () 15testdata/language-features/basic-values/where01.lc 1:1-1:7 ()
16testdata/language-features/basic-values/where01.lc 1:10-1:12 () 16testdata/language-features/basic-values/where01.lc 1:10-1:12 ()
diff --git a/testdata/language-features/basic-values/where04.out b/testdata/language-features/basic-values/where04.out
index 0b4065d9..8649acfa 100644
--- a/testdata/language-features/basic-values/where04.out
+++ b/testdata/language-features/basic-values/where04.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: () 3value1 :: ()
4value2 :: () 4value2 :: ()
5value3 :: () 5value3 :: ()
6------------ tooltips 6------------ tooltips
7testdata/language-features/basic-values/where04.lc 1:1-1:7 () 7testdata/language-features/basic-values/where04.lc 1:1-1:7 ()
8testdata/language-features/basic-values/where04.lc 1:18-1:19 () 8testdata/language-features/basic-values/where04.lc 1:18-1:19 ()
diff --git a/testdata/language-features/basic-values/where05.out b/testdata/language-features/basic-values/where05.out
index 72af1e72..95f7c3c3 100644
--- a/testdata/language-features/basic-values/where05.out
+++ b/testdata/language-features/basic-values/where05.out
@@ -1,9 +1,9 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value1 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a}->() 3value1 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a}->()
4value2 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a}->() 4value2 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a}->()
5value3 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a}->() 5value3 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a}->()
6value4 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a}->() 6value4 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a}->()
7------------ tooltips 7------------ tooltips
8testdata/language-features/basic-values/where05.lc 1:1-1:7 {a} -> {_ : Eq a} -> {_ : Num a}->() 8testdata/language-features/basic-values/where05.lc 1:1-1:7 {a} -> {_ : Eq a} -> {_ : Num a}->()
9testdata/language-features/basic-values/where05.lc 1:10-3:10 () 9testdata/language-features/basic-values/where05.lc 1:10-3:10 ()
diff --git a/testdata/language-features/basic-values/wildcard01.out b/testdata/language-features/basic-values/wildcard01.out
index 6755eb3b..dd651320 100644
--- a/testdata/language-features/basic-values/wildcard01.out
+++ b/testdata/language-features/basic-values/wildcard01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3funUnit :: {a} -> a->() 3funUnit :: {a} -> a->()
4------------ tooltips 4------------ tooltips
5testdata/language-features/basic-values/wildcard01.lc 1:1-1:8 {a} -> a->() 5testdata/language-features/basic-values/wildcard01.lc 1:1-1:8 {a} -> a->()
6testdata/language-features/basic-values/wildcard01.lc 1:13-1:15 () 6testdata/language-features/basic-values/wildcard01.lc 1:13-1:15 ()
diff --git a/testdata/language-features/guard/guard01.out b/testdata/language-features/guard/guard01.out
index 013da5d2..5f08a0dc 100644
--- a/testdata/language-features/guard/guard01.out
+++ b/testdata/language-features/guard/guard01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: () 3value :: ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/guard/guard01.lc 1:1-1:6 () 5testdata/language-features/guard/guard01.lc 1:1-1:6 ()
6testdata/language-features/guard/guard01.lc 1:9-1:13 Bool 6testdata/language-features/guard/guard01.lc 1:9-1:13 Bool
diff --git a/testdata/language-features/guard/guard02.reject.out b/testdata/language-features/guard/guard02.reject.out
index d06c5b7e..3cff76bd 100644
--- a/testdata/language-features/guard/guard02.reject.out
+++ b/testdata/language-features/guard/guard02.reject.out
@@ -1,7 +1,7 @@
1type error: can not unify 1type error: can not unify
2'String 2'String
3with 3with
4() 4()
5 5
6in testdata/language-features/guard/guard02.reject.lc:2:12: 6in testdata/language-features/guard/guard02.reject.lc:2:12:
7 | True = () 7 | True = ()
@@ -9,9 +9,9 @@ in testdata/language-features/guard/guard02.reject.lc:2:12:
9 9
10------------ trace 10------------ trace
11!type error: can not unify 11!type error: can not unify
12'String 12'String
13with 13with
14() 14()
15 15
16in testdata/language-features/guard/guard02.reject.lc:2:12: 16in testdata/language-features/guard/guard02.reject.lc:2:12:
17 | True = () 17 | True = ()
diff --git a/testdata/language-features/guard/guard03.out b/testdata/language-features/guard/guard03.out
index 3f240c28..60e74282 100644
--- a/testdata/language-features/guard/guard03.out
+++ b/testdata/language-features/guard/guard03.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'String 3value :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/guard/guard03.lc 1:1-1:6 String 5testdata/language-features/guard/guard03.lc 1:1-1:6 String
6testdata/language-features/guard/guard03.lc 2:5-2:9 Bool 6testdata/language-features/guard/guard03.lc 2:5-2:9 Bool
diff --git a/testdata/language-features/guard/guard04.out b/testdata/language-features/guard/guard04.out
index 5254a0e8..7ce283ad 100644
--- a/testdata/language-features/guard/guard04.out
+++ b/testdata/language-features/guard/guard04.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'String 3value :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/guard/guard04.lc 1:1-1:6 String 5testdata/language-features/guard/guard04.lc 1:1-1:6 String
6testdata/language-features/guard/guard04.lc 2:5-2:9 Bool 6testdata/language-features/guard/guard04.lc 2:5-2:9 Bool
diff --git a/testdata/language-features/guard/guard05.reject.out b/testdata/language-features/guard/guard05.reject.out
index 7b407416..99275e00 100644
--- a/testdata/language-features/guard/guard05.reject.out
+++ b/testdata/language-features/guard/guard05.reject.out
@@ -1,7 +1,7 @@
1type error: can not unify 1type error: can not unify
2'Bool 2'Bool
3with 3with
4() 4()
5 5
6in testdata/language-features/guard/guard05.reject.lc:1:9: 6in testdata/language-features/guard/guard05.reject.lc:1:9:
7value | () = "wrong" 7value | () = "wrong"
@@ -9,9 +9,9 @@ value | () = "wrong"
9 9
10------------ trace 10------------ trace
11!type error: can not unify 11!type error: can not unify
12'Bool 12'Bool
13with 13with
14() 14()
15 15
16in testdata/language-features/guard/guard05.reject.lc:1:9: 16in testdata/language-features/guard/guard05.reject.lc:1:9:
17value | () = "wrong" 17value | () = "wrong"
diff --git a/testdata/language-features/guard/guard06.out b/testdata/language-features/guard/guard06.out
index 00e3bebf..6a42d526 100644
--- a/testdata/language-features/guard/guard06.out
+++ b/testdata/language-features/guard/guard06.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: () 3value :: ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/guard/guard06.lc 1:1-1:6 () 5testdata/language-features/guard/guard06.lc 1:1-1:6 ()
6testdata/language-features/guard/guard06.lc 1:21-1:23 () 6testdata/language-features/guard/guard06.lc 1:21-1:23 ()
diff --git a/testdata/language-features/guard/guard07.out b/testdata/language-features/guard/guard07.out
index 94f6b321..2a965392 100644
--- a/testdata/language-features/guard/guard07.out
+++ b/testdata/language-features/guard/guard07.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'String 3value :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/guard/guard07.lc 1:1-1:6 String 5testdata/language-features/guard/guard07.lc 1:1-1:6 String
6testdata/language-features/guard/guard07.lc 1:7-1:11 Bool 6testdata/language-features/guard/guard07.lc 1:7-1:11 Bool
diff --git a/testdata/language-features/guard/guard08.out b/testdata/language-features/guard/guard08.out
index 0fb1cbe1..7cab16c3 100644
--- a/testdata/language-features/guard/guard08.out
+++ b/testdata/language-features/guard/guard08.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'String 3value :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/guard/guard08.lc 1:1-1:6 String 5testdata/language-features/guard/guard08.lc 1:1-1:6 String
6testdata/language-features/guard/guard08.lc 1:7-1:11 Bool 6testdata/language-features/guard/guard08.lc 1:7-1:11 Bool
diff --git a/testdata/language-features/guard/guard09.out b/testdata/language-features/guard/guard09.out
index 58167221..437466c6 100644
--- a/testdata/language-features/guard/guard09.out
+++ b/testdata/language-features/guard/guard09.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: 'String 3value :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/guard/guard09.lc 1:1-1:6 String 5testdata/language-features/guard/guard09.lc 1:1-1:6 String
6testdata/language-features/guard/guard09.lc 1:7-1:11 Bool 6testdata/language-features/guard/guard09.lc 1:7-1:11 Bool
diff --git a/testdata/language-features/guard/guard11.out b/testdata/language-features/guard/guard11.out
index 8c5ea30b..fead2674 100644
--- a/testdata/language-features/guard/guard11.out
+++ b/testdata/language-features/guard/guard11.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: 'Bool->'String 3fun :: 'Bool->'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/guard/guard11.lc 1:1-1:4 Bool->String 5testdata/language-features/guard/guard11.lc 1:1-1:4 Bool->String
6testdata/language-features/guard/guard11.lc 2:5-2:6 b_ 6testdata/language-features/guard/guard11.lc 2:5-2:6 b_
diff --git a/testdata/language-features/guard/guard12.reject.out b/testdata/language-features/guard/guard12.reject.out
index 24056827..ca6c50ab 100644
--- a/testdata/language-features/guard/guard12.reject.out
+++ b/testdata/language-features/guard/guard12.reject.out
@@ -1,7 +1,7 @@
1type error: can not unify 1type error: can not unify
2'Char 2'Char
3with 3with
4() 4()
5 5
6in testdata/language-features/guard/guard12.reject.lc:1:13: 6in testdata/language-features/guard/guard12.reject.lc:1:13:
7fun x | x = () | otherwise = 'a' 7fun x | x = () | otherwise = 'a'
@@ -9,9 +9,9 @@ fun x | x = () | otherwise = 'a'
9 9
10------------ trace 10------------ trace
11!type error: can not unify 11!type error: can not unify
12'Char 12'Char
13with 13with
14() 14()
15 15
16in testdata/language-features/guard/guard12.reject.lc:1:13: 16in testdata/language-features/guard/guard12.reject.lc:1:13:
17fun x | x = () | otherwise = 'a' 17fun x | x = () | otherwise = 'a'
diff --git a/testdata/language-features/guard/guard13.out b/testdata/language-features/guard/guard13.out
index dc689b1e..f801f842 100644
--- a/testdata/language-features/guard/guard13.out
+++ b/testdata/language-features/guard/guard13.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: 'Bool->() 3fun :: 'Bool->()
4------------ tooltips 4------------ tooltips
5testdata/language-features/guard/guard13.lc 1:1-1:4 Bool->() 5testdata/language-features/guard/guard13.lc 1:1-1:4 Bool->()
6testdata/language-features/guard/guard13.lc 1:7-1:8 b_ 6testdata/language-features/guard/guard13.lc 1:7-1:8 b_
diff --git a/testdata/language-features/guard/guard14.out b/testdata/language-features/guard/guard14.out
index 1229c3ad..ce882094 100644
--- a/testdata/language-features/guard/guard14.out
+++ b/testdata/language-features/guard/guard14.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: () 3value :: ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/guard/guard14.lc 1:1-1:6 () 5testdata/language-features/guard/guard14.lc 1:1-1:6 ()
6testdata/language-features/guard/guard14.lc 1:17-1:21 Bool 6testdata/language-features/guard/guard14.lc 1:17-1:21 Bool
diff --git a/testdata/language-features/guard/guard15.out b/testdata/language-features/guard/guard15.out
index 1f3ab140..d15dfe52 100644
--- a/testdata/language-features/guard/guard15.out
+++ b/testdata/language-features/guard/guard15.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: () 3value :: ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/guard/guard15.lc 1:1-1:6 () 5testdata/language-features/guard/guard15.lc 1:1-1:6 ()
6testdata/language-features/guard/guard15.lc 1:9-1:11 () 6testdata/language-features/guard/guard15.lc 1:9-1:11 ()
diff --git a/testdata/language-features/guard/guard16.out b/testdata/language-features/guard/guard16.out
index e1e6fd18..bb8f2af3 100644
--- a/testdata/language-features/guard/guard16.out
+++ b/testdata/language-features/guard/guard16.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: {a} -> {_ : 'Eq a} -> {_ : 'Num a}->() 3value :: {a} -> {_ : 'Eq a} -> {_ : 'Num a}->()
4------------ tooltips 4------------ tooltips
5testdata/language-features/guard/guard16.lc 1:1-1:6 {a} -> {_ : Eq a} -> {_ : Num a}->() 5testdata/language-features/guard/guard16.lc 1:1-1:6 {a} -> {_ : Eq a} -> {_ : Num a}->()
6testdata/language-features/guard/guard16.lc 1:9-3:10 () 6testdata/language-features/guard/guard16.lc 1:9-3:10 ()
diff --git a/testdata/language-features/module/Hello01.out b/testdata/language-features/module/Hello01.out
index 6d911abc..08a387f1 100644
--- a/testdata/language-features/module/Hello01.out
+++ b/testdata/language-features/module/Hello01.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3hello :: 'String 3hello :: 'String
4world :: 'String 4world :: 'String
5------------ tooltips 5------------ tooltips
6testdata/language-features/module/Hello01.lc 3:1-3:6 String 6testdata/language-features/module/Hello01.lc 3:1-3:6 String
7testdata/language-features/module/Hello01.lc 3:9-3:16 String 7testdata/language-features/module/Hello01.lc 3:9-3:16 String
diff --git a/testdata/language-features/module/Hello02.out b/testdata/language-features/module/Hello02.out
index 71039060..17b419db 100644
--- a/testdata/language-features/module/Hello02.out
+++ b/testdata/language-features/module/Hello02.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3hello :: 'String 3hello :: 'String
4world :: 'String 4world :: 'String
5------------ tooltips 5------------ tooltips
6testdata/language-features/module/Hello02.lc 3:1-3:6 String 6testdata/language-features/module/Hello02.lc 3:1-3:6 String
7testdata/language-features/module/Hello02.lc 3:9-3:16 String 7testdata/language-features/module/Hello02.lc 3:9-3:16 String
diff --git a/testdata/language-features/module/Hello03.out b/testdata/language-features/module/Hello03.out
index 899f1f33..4d5deb19 100644
--- a/testdata/language-features/module/Hello03.out
+++ b/testdata/language-features/module/Hello03.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3greeting :: 'Char 3greeting :: 'Char
4value :: 'Float 4value :: 'Float
5------------ tooltips 5------------ tooltips
6testdata/language-features/module/Hello03.lc 7:1-7:9 Char 6testdata/language-features/module/Hello03.lc 7:1-7:9 Char
7testdata/language-features/module/Hello03.lc 7:12-7:15 Char 7testdata/language-features/module/Hello03.lc 7:12-7:15 Char
diff --git a/testdata/language-features/module/ModulePackage/SubModule01.out b/testdata/language-features/module/ModulePackage/SubModule01.out
index 5d80d9f9..347da0c0 100644
--- a/testdata/language-features/module/ModulePackage/SubModule01.out
+++ b/testdata/language-features/module/ModulePackage/SubModule01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3hello :: 'String 3hello :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/ModulePackage/SubModule01.lc 3:1-3:6 String 5testdata/language-features/module/ModulePackage/SubModule01.lc 3:1-3:6 String
6testdata/language-features/module/ModulePackage/SubModule01.lc 3:9-3:16 String 6testdata/language-features/module/ModulePackage/SubModule01.lc 3:9-3:16 String
diff --git a/testdata/language-features/module/Moduledef06.out b/testdata/language-features/module/Moduledef06.out
index 421619b1..39b689da 100644
--- a/testdata/language-features/module/Moduledef06.out
+++ b/testdata/language-features/module/Moduledef06.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3hello :: 'String 3hello :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/Moduledef06.lc 3:1-3:6 String 5testdata/language-features/module/Moduledef06.lc 3:1-3:6 String
6testdata/language-features/module/Moduledef06.lc 3:9-3:16 String 6testdata/language-features/module/Moduledef06.lc 3:9-3:16 String
diff --git a/testdata/language-features/module/Moduledef07.out b/testdata/language-features/module/Moduledef07.out
index 87502a46..c465589a 100644
--- a/testdata/language-features/module/Moduledef07.out
+++ b/testdata/language-features/module/Moduledef07.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3hello :: 'String 3hello :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/Moduledef07.lc 5:1-5:6 String 5testdata/language-features/module/Moduledef07.lc 5:1-5:6 String
6testdata/language-features/module/Moduledef07.lc 5:9-5:16 String 6testdata/language-features/module/Moduledef07.lc 5:9-5:16 String
diff --git a/testdata/language-features/module/Moduledef08.out b/testdata/language-features/module/Moduledef08.out
index b361bfeb..e6100f0d 100644
--- a/testdata/language-features/module/Moduledef08.out
+++ b/testdata/language-features/module/Moduledef08.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3hello :: 'String 3hello :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/Moduledef08.lc 5:1-5:6 String 5testdata/language-features/module/Moduledef08.lc 5:1-5:6 String
6testdata/language-features/module/Moduledef08.lc 5:9-5:16 String 6testdata/language-features/module/Moduledef08.lc 5:9-5:16 String
diff --git a/testdata/language-features/module/Moduledef09.out b/testdata/language-features/module/Moduledef09.out
index 59f23c4d..76e2a240 100644
--- a/testdata/language-features/module/Moduledef09.out
+++ b/testdata/language-features/module/Moduledef09.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3hello :: 'String 3hello :: 'String
4world :: 'String 4world :: 'String
5------------ tooltips 5------------ tooltips
6testdata/language-features/module/Moduledef09.lc 5:1-5:6 String 6testdata/language-features/module/Moduledef09.lc 5:1-5:6 String
7testdata/language-features/module/Moduledef09.lc 5:9-5:16 String 7testdata/language-features/module/Moduledef09.lc 5:9-5:16 String
diff --git a/testdata/language-features/module/Moduledef10.out b/testdata/language-features/module/Moduledef10.out
index 466f5547..69ce937f 100644
--- a/testdata/language-features/module/Moduledef10.out
+++ b/testdata/language-features/module/Moduledef10.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3hello :: 'String 3hello :: 'String
4world :: 'String 4world :: 'String
5value :: () 5value :: ()
6------------ tooltips 6------------ tooltips
7testdata/language-features/module/Moduledef10.lc 6:1-6:6 String 7testdata/language-features/module/Moduledef10.lc 6:1-6:6 String
8testdata/language-features/module/Moduledef10.lc 6:9-6:16 String 8testdata/language-features/module/Moduledef10.lc 6:9-6:16 String
diff --git a/testdata/language-features/module/Moduledef13.out b/testdata/language-features/module/Moduledef13.out
index 75e35b24..a5f17505 100644
--- a/testdata/language-features/module/Moduledef13.out
+++ b/testdata/language-features/module/Moduledef13.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3hello :: 'String 3hello :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/Moduledef13.lc 3:1-3:6 String 5testdata/language-features/module/Moduledef13.lc 3:1-3:6 String
6testdata/language-features/module/Moduledef13.lc 3:9-3:16 String 6testdata/language-features/module/Moduledef13.lc 3:9-3:16 String
diff --git a/testdata/language-features/module/TypeSyn01Mod.out b/testdata/language-features/module/TypeSyn01Mod.out
index d1af6425..47ed80b8 100644
--- a/testdata/language-features/module/TypeSyn01Mod.out
+++ b/testdata/language-features/module/TypeSyn01Mod.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3'MyUnit :: Type 3'MyUnit :: Type
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/TypeSyn01Mod.lc 2:6-2:12 Type 5testdata/language-features/module/TypeSyn01Mod.lc 2:6-2:12 Type
6testdata/language-features/module/TypeSyn01Mod.lc 2:15-2:17 Type 6testdata/language-features/module/TypeSyn01Mod.lc 2:15-2:17 Type
diff --git a/testdata/language-features/module/import01.out b/testdata/language-features/module/import01.out
index 0f691e51..f22bf842 100644
--- a/testdata/language-features/module/import01.out
+++ b/testdata/language-features/module/import01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3x :: 'String 3x :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/import01.lc 3:1-3:2 String 5testdata/language-features/module/import01.lc 3:1-3:2 String
6testdata/language-features/module/import01.lc 3:5-3:10 String 6testdata/language-features/module/import01.lc 3:5-3:10 String
diff --git a/testdata/language-features/module/import04.reject.out b/testdata/language-features/module/import04.reject.out
index 21739b37..82543ceb 100644
--- a/testdata/language-features/module/import04.reject.out
+++ b/testdata/language-features/module/import04.reject.out
@@ -5,7 +5,7 @@ hello = "hello"
5hello = "hello" 5hello = "hello"
6^^^^^ 6^^^^^
7------------ trace 7------------ trace
8hello :: 'String 8hello :: 'String
9!already defined hello at testdata/language-features/module/import04.reject.lc:4:1: 9!already defined hello at testdata/language-features/module/import04.reject.lc:4:1:
10hello = "hello" 10hello = "hello"
11^^^^^ 11^^^^^
diff --git a/testdata/language-features/module/import05.out b/testdata/language-features/module/import05.out
index c618c024..2d8e2a30 100644
--- a/testdata/language-features/module/import05.out
+++ b/testdata/language-features/module/import05.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3x :: 'String 3x :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/import05.lc 3:6-3:12 Type 5testdata/language-features/module/import05.lc 3:6-3:12 Type
6testdata/language-features/module/import05.lc 4:1-4:2 String 6testdata/language-features/module/import05.lc 4:1-4:2 String
diff --git a/testdata/language-features/module/import06.out b/testdata/language-features/module/import06.out
index 40a4a7c8..7a77815a 100644
--- a/testdata/language-features/module/import06.out
+++ b/testdata/language-features/module/import06.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3hello :: () 3hello :: ()
4x :: 'String 4x :: 'String
5------------ tooltips 5------------ tooltips
6testdata/language-features/module/import06.lc 3:1-3:6 () 6testdata/language-features/module/import06.lc 3:1-3:6 ()
7testdata/language-features/module/import06.lc 3:9-3:11 () 7testdata/language-features/module/import06.lc 3:9-3:11 ()
diff --git a/testdata/language-features/module/import07.out b/testdata/language-features/module/import07.out
index 4d508754..818bcafb 100644
--- a/testdata/language-features/module/import07.out
+++ b/testdata/language-features/module/import07.out
@@ -1,7 +1,7 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3hello :: () 3hello :: ()
4x :: 'String 4x :: 'String
5------------ tooltips 5------------ tooltips
6testdata/language-features/module/import07.lc 3:1-3:6 () 6testdata/language-features/module/import07.lc 3:1-3:6 ()
7testdata/language-features/module/import07.lc 3:9-3:11 () 7testdata/language-features/module/import07.lc 3:9-3:11 ()
diff --git a/testdata/language-features/module/import08.out b/testdata/language-features/module/import08.out
index 44b4050d..6d053bdf 100644
--- a/testdata/language-features/module/import08.out
+++ b/testdata/language-features/module/import08.out
@@ -1,9 +1,9 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: () 3value :: ()
4g :: 'Char 4g :: 'Char
5h :: 'String 5h :: 'String
6w :: 'String 6w :: 'String
7------------ tooltips 7------------ tooltips
8testdata/language-features/module/import08.lc 3:1-3:6 () 8testdata/language-features/module/import08.lc 3:1-3:6 ()
9testdata/language-features/module/import08.lc 3:9-3:11 () 9testdata/language-features/module/import08.lc 3:9-3:11 ()
diff --git a/testdata/language-features/module/import09.out b/testdata/language-features/module/import09.out
index 77ac024a..080f162a 100644
--- a/testdata/language-features/module/import09.out
+++ b/testdata/language-features/module/import09.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: {a} -> a -> ()->() 3fun :: {a} -> a -> ()->()
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/import09.lc 3:8-3:9 b_ 5testdata/language-features/module/import09.lc 3:8-3:9 b_
6testdata/language-features/module/import09.lc 3:8-3:29 Type 6testdata/language-features/module/import09.lc 3:8-3:29 Type
diff --git a/testdata/language-features/module/import10.reject.out b/testdata/language-features/module/import10.reject.out
index 387cc439..7f8c8d2d 100644
--- a/testdata/language-features/module/import10.reject.out
+++ b/testdata/language-features/module/import10.reject.out
@@ -5,7 +5,7 @@ type MyUnit = ()
5type MyUnit = () 5type MyUnit = ()
6 ^^^^^^ 6 ^^^^^^
7------------ trace 7------------ trace
8'MyUnit :: Type 8'MyUnit :: Type
9!already defined 'MyUnit at testdata/language-features/module/import10.reject.lc:3:6: 9!already defined 'MyUnit at testdata/language-features/module/import10.reject.lc:3:6:
10type MyUnit = () 10type MyUnit = ()
11 ^^^^^^ 11 ^^^^^^
diff --git a/testdata/language-features/module/import11.reject.out b/testdata/language-features/module/import11.reject.out
index 79b26f64..531e98a6 100644
--- a/testdata/language-features/module/import11.reject.out
+++ b/testdata/language-features/module/import11.reject.out
@@ -5,7 +5,7 @@ type MyUnit = ()
5type MyUnit = () 5type MyUnit = ()
6 ^^^^^^ 6 ^^^^^^
7------------ trace 7------------ trace
8'MyUnit :: Type 8'MyUnit :: Type
9!already defined 'MyUnit at testdata/language-features/module/import11.reject.lc:3:6: 9!already defined 'MyUnit at testdata/language-features/module/import11.reject.lc:3:6:
10type MyUnit = () 10type MyUnit = ()
11 ^^^^^^ 11 ^^^^^^
diff --git a/testdata/language-features/module/import12.out b/testdata/language-features/module/import12.out
index f158db78..6f4ea030 100644
--- a/testdata/language-features/module/import12.out
+++ b/testdata/language-features/module/import12.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: 'String 3fun :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/import12.lc 4:1-4:4 String 5testdata/language-features/module/import12.lc 4:1-4:4 String
6testdata/language-features/module/import12.lc 4:7-4:12 String 6testdata/language-features/module/import12.lc 4:7-4:12 String
diff --git a/testdata/language-features/module/import13.out b/testdata/language-features/module/import13.out
index 0b4deb36..bb815c78 100644
--- a/testdata/language-features/module/import13.out
+++ b/testdata/language-features/module/import13.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: 'String 3fun :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/import13.lc 4:1-4:4 String 5testdata/language-features/module/import13.lc 4:1-4:4 String
6testdata/language-features/module/import13.lc 4:7-4:12 String 6testdata/language-features/module/import13.lc 4:7-4:12 String
diff --git a/testdata/language-features/module/import14.out b/testdata/language-features/module/import14.out
index 8d1e2208..cdfebd2b 100644
--- a/testdata/language-features/module/import14.out
+++ b/testdata/language-features/module/import14.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: 'String 3fun :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/import14.lc 4:1-4:4 String 5testdata/language-features/module/import14.lc 4:1-4:4 String
6testdata/language-features/module/import14.lc 4:7-4:12 String 6testdata/language-features/module/import14.lc 4:7-4:12 String
diff --git a/testdata/language-features/module/import15.out b/testdata/language-features/module/import15.out
index 80c15bc6..5217f2c1 100644
--- a/testdata/language-features/module/import15.out
+++ b/testdata/language-features/module/import15.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: 'String 3fun :: 'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/module/import15.lc 3:1-3:4 String 5testdata/language-features/module/import15.lc 3:1-3:4 String
6testdata/language-features/module/import15.lc 3:7-3:12 String 6testdata/language-features/module/import15.lc 3:7-3:12 String
diff --git a/testdata/language-features/pattern/caseWhere.out b/testdata/language-features/pattern/caseWhere.out
index 65af037c..f832724c 100644
--- a/testdata/language-features/pattern/caseWhere.out
+++ b/testdata/language-features/pattern/caseWhere.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/language-features/pattern/pattern01.out b/testdata/language-features/pattern/pattern01.out
index 8afd1b3e..7cb01af3 100644
--- a/testdata/language-features/pattern/pattern01.out
+++ b/testdata/language-features/pattern/pattern01.out
@@ -1,9 +1,9 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun1 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char 3fun1 :: {a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char
4fun2 :: 'String->'Char 4fun2 :: 'String->'Char
5fun3 :: 'Char->'Char 5fun3 :: 'Char->'Char
6fun4 :: ()->'Char 6fun4 :: ()->'Char
7------------ tooltips 7------------ tooltips
8testdata/language-features/pattern/pattern01.lc 1:1-1:5 {a} -> {_ : Eq a} -> {_ : Num a} -> a->Char 8testdata/language-features/pattern/pattern01.lc 1:1-1:5 {a} -> {_ : Eq a} -> {_ : Num a} -> a->Char
9testdata/language-features/pattern/pattern01.lc 1:10-1:13 Char 9testdata/language-features/pattern/pattern01.lc 1:10-1:13 Char
diff --git a/testdata/language-features/pattern/patternGuard.out b/testdata/language-features/pattern/patternGuard.out
index 65af037c..f832724c 100644
--- a/testdata/language-features/pattern/patternGuard.out
+++ b/testdata/language-features/pattern/patternGuard.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/language-features/pattern/uncovered.out b/testdata/language-features/pattern/uncovered.out
index 5434c818..74f875cb 100644
--- a/testdata/language-features/pattern/uncovered.out
+++ b/testdata/language-features/pattern/uncovered.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3f :: {a} -> {_ : 'Num a} -> 'Bool -> 'Bool -> 'Bool->a 3f :: {a} -> {_ : 'Num a} -> 'Bool -> 'Bool -> 'Bool->a
4------------ tooltips 4------------ tooltips
5testdata/language-features/pattern/uncovered.lc 4:1-4:2 {a} -> {_ : Num a} -> Bool -> Bool -> Bool->a 5testdata/language-features/pattern/uncovered.lc 4:1-4:2 {a} -> {_ : Num a} -> Bool -> Bool -> Bool->a
6testdata/language-features/pattern/uncovered.lc 4:18-4:19 b_ 6testdata/language-features/pattern/uncovered.lc 4:18-4:19 b_
diff --git a/testdata/language-features/pattern/unreachable.out b/testdata/language-features/pattern/unreachable.out
index c2090d56..51c957b3 100644
--- a/testdata/language-features/pattern/unreachable.out
+++ b/testdata/language-features/pattern/unreachable.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3f :: {a} -> a->'String 3f :: {a} -> a->'String
4------------ tooltips 4------------ tooltips
5testdata/language-features/pattern/unreachable.lc 4:1-4:2 {a} -> a->String 5testdata/language-features/pattern/unreachable.lc 4:1-4:2 {a} -> a->String
6testdata/language-features/pattern/unreachable.lc 4:7-4:14 String 6testdata/language-features/pattern/unreachable.lc 4:7-4:14 String
diff --git a/testdata/language-features/pattern/viewPattern.out b/testdata/language-features/pattern/viewPattern.out
index 65af037c..f832724c 100644
--- a/testdata/language-features/pattern/viewPattern.out
+++ b/testdata/language-features/pattern/viewPattern.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/language-features/recursion/mutualConst.out b/testdata/language-features/recursion/mutualConst.out
index 65af037c..f832724c 100644
--- a/testdata/language-features/recursion/mutualConst.out
+++ b/testdata/language-features/recursion/mutualConst.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/language-features/recursion/simplerec01.out b/testdata/language-features/recursion/simplerec01.out
index fd6f16c4..e975d532 100644
--- a/testdata/language-features/recursion/simplerec01.out
+++ b/testdata/language-features/recursion/simplerec01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: {a} -> {_ : 'Num a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char 3fun :: {a} -> {_ : 'Num a} -> {_ : 'Eq a} -> {_ : 'Num a} -> a->'Char
4------------ tooltips 4------------ tooltips
5testdata/language-features/recursion/simplerec01.lc 1:1-1:4 {a} -> {_ : Num a} -> {_ : Eq a} -> {_ : Num a} -> a->Char 5testdata/language-features/recursion/simplerec01.lc 1:1-1:4 {a} -> {_ : Num a} -> {_ : Eq a} -> {_ : Num a} -> a->Char
6testdata/language-features/recursion/simplerec01.lc 1:9-1:12 Char 6testdata/language-features/recursion/simplerec01.lc 1:9-1:12 Char
diff --git a/testdata/language-features/recursion/simplerec02.out b/testdata/language-features/recursion/simplerec02.out
index 0d2d20b6..96ad9d37 100644
--- a/testdata/language-features/recursion/simplerec02.out
+++ b/testdata/language-features/recursion/simplerec02.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: () 3value :: ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/recursion/simplerec02.lc 1:1-1:6 () 5testdata/language-features/recursion/simplerec02.lc 1:1-1:6 ()
6testdata/language-features/recursion/simplerec02.lc 1:21-1:24 Char 6testdata/language-features/recursion/simplerec02.lc 1:21-1:24 Char
diff --git a/testdata/language-features/recursion/simplerec03.out b/testdata/language-features/recursion/simplerec03.out
index 9a1a3bb2..27c2981e 100644
--- a/testdata/language-features/recursion/simplerec03.out
+++ b/testdata/language-features/recursion/simplerec03.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3value :: () 3value :: ()
4------------ tooltips 4------------ tooltips
5testdata/language-features/recursion/simplerec03.lc 1:1-1:6 () 5testdata/language-features/recursion/simplerec03.lc 1:1-1:6 ()
6testdata/language-features/recursion/simplerec03.lc 1:9-1:11 () 6testdata/language-features/recursion/simplerec03.lc 1:9-1:11 ()
diff --git a/testdata/language-features/section/section01.out b/testdata/language-features/section/section01.out
index e33ef53b..2f19c090 100644
--- a/testdata/language-features/section/section01.out
+++ b/testdata/language-features/section/section01.out
@@ -1,8 +1,8 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3!@! :: {a} -> {b} -> a -> b->() 3!@! :: {a} -> {b} -> a -> b->()
4value1 :: {a} -> {b} -> a -> b->() 4value1 :: {a} -> {b} -> a -> b->()
5value2 :: {a} -> {b} -> a -> b->() 5value2 :: {a} -> {b} -> a -> b->()
6------------ tooltips 6------------ tooltips
7testdata/language-features/section/section01.lc 1:3-1:6 {a} -> {b} -> a -> b->() 7testdata/language-features/section/section01.lc 1:3-1:6 {a} -> {b} -> a -> b->()
8testdata/language-features/section/section01.lc 1:11-1:13 () 8testdata/language-features/section/section01.lc 1:11-1:13 ()
diff --git a/testdata/let.out b/testdata/let.out
index e3da6694..a5c035e3 100644
--- a/testdata/let.out
+++ b/testdata/let.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3f :: {a} -> a->a 3f :: {a} -> a->a
4------------ tooltips 4------------ tooltips
5testdata/let.lc 2:1-2:2 {a} -> a->a 5testdata/let.lc 2:1-2:2 {a} -> a->a
6testdata/let.lc 2:15-2:17 {a} -> a->a 6testdata/let.lc 2:15-2:17 {a} -> a->a
diff --git a/testdata/letIndent.out b/testdata/letIndent.out
index 9dbbd933..3009d024 100644
--- a/testdata/letIndent.out
+++ b/testdata/letIndent.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3fun :: {a} -> a->a 3fun :: {a} -> a->a
4------------ tooltips 4------------ tooltips
5testdata/letIndent.lc 2:1-2:4 {a} -> a->a 5testdata/letIndent.lc 2:1-2:4 {a} -> a->a
6testdata/letIndent.lc 3:10-3:11 b_ 6testdata/letIndent.lc 3:10-3:11 b_
diff --git a/testdata/listcompr01.out b/testdata/listcompr01.out
index 65af037c..f832724c 100644
--- a/testdata/listcompr01.out
+++ b/testdata/listcompr01.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/listcompr02.out b/testdata/listcompr02.out
index 65af037c..f832724c 100644
--- a/testdata/listcompr02.out
+++ b/testdata/listcompr02.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/listcompr03.out b/testdata/listcompr03.out
index 65af037c..f832724c 100644
--- a/testdata/listcompr03.out
+++ b/testdata/listcompr03.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/listcompr04.out b/testdata/listcompr04.out
index 65af037c..f832724c 100644
--- a/testdata/listcompr04.out
+++ b/testdata/listcompr04.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/listcompr05.out b/testdata/listcompr05.out
index 65af037c..f832724c 100644
--- a/testdata/listcompr05.out
+++ b/testdata/listcompr05.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/localfun.out b/testdata/localfun.out
index 65af037c..f832724c 100644
--- a/testdata/localfun.out
+++ b/testdata/localfun.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/loopIssue.out b/testdata/loopIssue.out
index 65af037c..f832724c 100644
--- a/testdata/loopIssue.out
+++ b/testdata/loopIssue.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/performance/Material.out b/testdata/performance/Material.out
index 0e92cbe1..ca1dbe47 100644
--- a/testdata/performance/Material.out
+++ b/testdata/performance/Material.out
@@ -1,161 +1,161 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3identityLight :: 'Float 3identityLight :: 'Float
4'Entity :: Type 4'Entity :: Type
5Entity :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 3 'Float -> 'Vec 4 'Float -> 'Entity 5Entity :: 'Vec 4 'Float -> 'Vec 4 'Float -> 'Vec 3 'Float -> 'Vec 4 'Float -> 'Entity
6'EntityCase :: (a : 'Entity->Type) -> ((b : 'Vec 4 'Float) -> (c : 'Vec 4 'Float) -> (d : 'Vec 3 'Float) -> (e : 'Vec 4 'Float) -> a (Entity b c d e)) -> (f:'Entity) -> a f 6'EntityCase :: (a : 'Entity->Type) -> ((b : 'Vec 4 'Float) -> (c : 'Vec 4 'Float) -> (d : 'Vec 3 'Float) -> (e : 'Vec 4 'Float) -> a (Entity b c d e)) -> (f:'Entity) -> a f
7match'Entity :: (a : Type->Type) -> a 'Entity -> (b:Type) -> a b -> a b 7match'Entity :: (a : Type->Type) -> a 'Entity -> (b:Type) -> a b -> a b
8eAmbientLight :: 'Entity -> 'VecS 'Float 4 8eAmbientLight :: 'Entity -> 'VecS 'Float 4
9eDirectedLight :: 'Entity -> 'VecS 'Float 4 9eDirectedLight :: 'Entity -> 'VecS 'Float 4
10eLightDir :: 'Entity -> 'VecS 'Float 3 10eLightDir :: 'Entity -> 'VecS 'Float 3
11eShaderRGBA :: 'Entity -> 'VecS 'Float 4 11eShaderRGBA :: 'Entity -> 'VecS 'Float 4
12'WaveType :: Type 12'WaveType :: Type
13WT_Sin :: 'WaveType 13WT_Sin :: 'WaveType
14WT_Triangle :: 'WaveType 14WT_Triangle :: 'WaveType
15WT_Square :: 'WaveType 15WT_Square :: 'WaveType
16WT_Sawtooth :: 'WaveType 16WT_Sawtooth :: 'WaveType
17WT_InverseSawtooth :: 'WaveType 17WT_InverseSawtooth :: 'WaveType
18WT_Noise :: 'WaveType 18WT_Noise :: 'WaveType
19'WaveTypeCase :: (a : 'WaveType->Type) -> a WT_Sin -> a WT_Triangle -> a WT_Square -> a WT_Sawtooth -> a WT_InverseSawtooth -> a WT_Noise -> (b:'WaveType) -> a b 19'WaveTypeCase :: (a : 'WaveType->Type) -> a WT_Sin -> a WT_Triangle -> a WT_Square -> a WT_Sawtooth -> a WT_InverseSawtooth -> a WT_Noise -> (b:'WaveType) -> a b
20match'WaveType :: (a : Type->Type) -> a 'WaveType -> (b:Type) -> a b -> a b 20match'WaveType :: (a : Type->Type) -> a 'WaveType -> (b:Type) -> a b -> a b
21'Wave :: Type 21'Wave :: Type
22Wave :: 'WaveType -> 'Float -> 'Float -> 'Float -> 'Float->'Wave 22Wave :: 'WaveType -> 'Float -> 'Float -> 'Float -> 'Float->'Wave
23'WaveCase :: (a : 'Wave->Type) -> ((b:'WaveType) -> (c:'Float) -> (d:'Float) -> (e:'Float) -> (f:'Float) -> a (Wave b c d e f)) -> (g:'Wave) -> a g 23'WaveCase :: (a : 'Wave->Type) -> ((b:'WaveType) -> (c:'Float) -> (d:'Float) -> (e:'Float) -> (f:'Float) -> a (Wave b c d e f)) -> (g:'Wave) -> a g
24match'Wave :: (a : Type->Type) -> a 'Wave -> (b:Type) -> a b -> a b 24match'Wave :: (a : Type->Type) -> a 'Wave -> (b:Type) -> a b -> a b
25'Deform :: Type 25'Deform :: Type
26D_AutoSprite :: 'Deform 26D_AutoSprite :: 'Deform
27D_AutoSprite2 :: 'Deform 27D_AutoSprite2 :: 'Deform
28D_Bulge :: 'Float -> 'Float -> 'Float->'Deform 28D_Bulge :: 'Float -> 'Float -> 'Float->'Deform
29D_Move :: 'Vec 3 'Float -> 'Wave->'Deform 29D_Move :: 'Vec 3 'Float -> 'Wave->'Deform
30D_Normal :: 'Float -> 'Float->'Deform 30D_Normal :: 'Float -> 'Float->'Deform
31D_ProjectionShadow :: 'Deform 31D_ProjectionShadow :: 'Deform
32D_Text0 :: 'Deform 32D_Text0 :: 'Deform
33D_Text1 :: 'Deform 33D_Text1 :: 'Deform
34D_Text2 :: 'Deform 34D_Text2 :: 'Deform
35D_Text3 :: 'Deform 35D_Text3 :: 'Deform
36D_Text4 :: 'Deform 36D_Text4 :: 'Deform
37D_Text5 :: 'Deform 37D_Text5 :: 'Deform
38D_Text6 :: 'Deform 38D_Text6 :: 'Deform
39D_Text7 :: 'Deform 39D_Text7 :: 'Deform
40D_Wave :: 'Float -> 'Wave->'Deform 40D_Wave :: 'Float -> 'Wave->'Deform
41'DeformCase :: (a : 'Deform->Type) -> a D_AutoSprite -> a D_AutoSprite2 -> ((b:'Float) -> (c:'Float) -> (d:'Float) -> a (D_Bulge b c d)) -> ((e : 'Vec 3 'Float) -> (f:'Wave) -> a (D_Move e f)) -> ((g:'Float) -> (h:'Float) -> a (D_Normal g h)) -> a D_ProjectionShadow -> a D_Text0 -> a D_Text1 -> a D_Text2 -> a D_Text3 -> a D_Text4 -> a D_Text5 -> a D_Text6 -> a D_Text7 -> ((i:'Float) -> (j:'Wave) -> a (D_Wave i j)) -> (k:'Deform) -> a k 41'DeformCase :: (a : 'Deform->Type) -> a D_AutoSprite -> a D_AutoSprite2 -> ((b:'Float) -> (c:'Float) -> (d:'Float) -> a (D_Bulge b c d)) -> ((e : 'Vec 3 'Float) -> (f:'Wave) -> a (D_Move e f)) -> ((g:'Float) -> (h:'Float) -> a (D_Normal g h)) -> a D_ProjectionShadow -> a D_Text0 -> a D_Text1 -> a D_Text2 -> a D_Text3 -> a D_Text4 -> a D_Text5 -> a D_Text6 -> a D_Text7 -> ((i:'Float) -> (j:'Wave) -> a (D_Wave i j)) -> (k:'Deform) -> a k
42match'Deform :: (a : Type->Type) -> a 'Deform -> (b:Type) -> a b -> a b 42match'Deform :: (a : Type->Type) -> a 'Deform -> (b:Type) -> a b -> a b
43'CullType :: Type 43'CullType :: Type
44CT_FrontSided :: 'CullType 44CT_FrontSided :: 'CullType
45CT_BackSided :: 'CullType 45CT_BackSided :: 'CullType
46CT_TwoSided :: 'CullType 46CT_TwoSided :: 'CullType
47'CullTypeCase :: (a : 'CullType->Type) -> a CT_FrontSided -> a CT_BackSided -> a CT_TwoSided -> (b:'CullType) -> a b 47'CullTypeCase :: (a : 'CullType->Type) -> a CT_FrontSided -> a CT_BackSided -> a CT_TwoSided -> (b:'CullType) -> a b
48match'CullType :: (a : Type->Type) -> a 'CullType -> (b:Type) -> a b -> a b 48match'CullType :: (a : Type->Type) -> a 'CullType -> (b:Type) -> a b -> a b
49'Blending' :: Type 49'Blending' :: Type
50B_DstAlpha :: 'Blending' 50B_DstAlpha :: 'Blending'
51B_DstColor :: 'Blending' 51B_DstColor :: 'Blending'
52B_One :: 'Blending' 52B_One :: 'Blending'
53B_OneMinusDstAlpha :: 'Blending' 53B_OneMinusDstAlpha :: 'Blending'
54B_OneMinusDstColor :: 'Blending' 54B_OneMinusDstColor :: 'Blending'
55B_OneMinusSrcAlpha :: 'Blending' 55B_OneMinusSrcAlpha :: 'Blending'
56B_OneMinusSrcColor :: 'Blending' 56B_OneMinusSrcColor :: 'Blending'
57B_SrcAlpha :: 'Blending' 57B_SrcAlpha :: 'Blending'
58B_SrcAlphaSaturate :: 'Blending' 58B_SrcAlphaSaturate :: 'Blending'
59B_SrcColor :: 'Blending' 59B_SrcColor :: 'Blending'
60B_Zero :: 'Blending' 60B_Zero :: 'Blending'
61'Blending'Case :: (a : 'Blending'->Type) -> a B_DstAlpha -> a B_DstColor -> a B_One -> a B_OneMinusDstAlpha -> a B_OneMinusDstColor -> a B_OneMinusSrcAlpha -> a B_OneMinusSrcColor -> a B_SrcAlpha -> a B_SrcAlphaSaturate -> a B_SrcColor -> a B_Zero -> (b:'Blending') -> a b 61'Blending'Case :: (a : 'Blending'->Type) -> a B_DstAlpha -> a B_DstColor -> a B_One -> a B_OneMinusDstAlpha -> a B_OneMinusDstColor -> a B_OneMinusSrcAlpha -> a B_OneMinusSrcColor -> a B_SrcAlpha -> a B_SrcAlphaSaturate -> a B_SrcColor -> a B_Zero -> (b:'Blending') -> a b
62match'Blending' :: (a : Type->Type) -> a 'Blending' -> (b:Type) -> a b -> a b 62match'Blending' :: (a : Type->Type) -> a 'Blending' -> (b:Type) -> a b -> a b
63'RGBGen :: Type 63'RGBGen :: Type
64RGB_Wave :: 'Wave->'RGBGen 64RGB_Wave :: 'Wave->'RGBGen
65RGB_Const :: 'Float -> 'Float -> 'Float->'RGBGen 65RGB_Const :: 'Float -> 'Float -> 'Float->'RGBGen
66RGB_Identity :: 'RGBGen 66RGB_Identity :: 'RGBGen
67RGB_IdentityLighting :: 'RGBGen 67RGB_IdentityLighting :: 'RGBGen
68RGB_Entity :: 'RGBGen 68RGB_Entity :: 'RGBGen
69RGB_OneMinusEntity :: 'RGBGen 69RGB_OneMinusEntity :: 'RGBGen
70RGB_ExactVertex :: 'RGBGen 70RGB_ExactVertex :: 'RGBGen
71RGB_Vertex :: 'RGBGen 71RGB_Vertex :: 'RGBGen
72RGB_LightingDiffuse :: 'RGBGen 72RGB_LightingDiffuse :: 'RGBGen
73RGB_OneMinusVertex :: 'RGBGen 73RGB_OneMinusVertex :: 'RGBGen
74RGB_Undefined :: 'RGBGen 74RGB_Undefined :: 'RGBGen
75'RGBGenCase :: (a : 'RGBGen->Type) -> ((b:'Wave) -> a (RGB_Wave b)) -> ((c:'Float) -> (d:'Float) -> (e:'Float) -> a (RGB_Const c d e)) -> a RGB_Identity -> a RGB_IdentityLighting -> a RGB_Entity -> a RGB_OneMinusEntity -> a RGB_ExactVertex -> a RGB_Vertex -> a RGB_LightingDiffuse -> a RGB_OneMinusVertex -> a RGB_Undefined -> (f:'RGBGen) -> a f 75'RGBGenCase :: (a : 'RGBGen->Type) -> ((b:'Wave) -> a (RGB_Wave b)) -> ((c:'Float) -> (d:'Float) -> (e:'Float) -> a (RGB_Const c d e)) -> a RGB_Identity -> a RGB_IdentityLighting -> a RGB_Entity -> a RGB_OneMinusEntity -> a RGB_ExactVertex -> a RGB_Vertex -> a RGB_LightingDiffuse -> a RGB_OneMinusVertex -> a RGB_Undefined -> (f:'RGBGen) -> a f
76match'RGBGen :: (a : Type->Type) -> a 'RGBGen -> (b:Type) -> a b -> a b 76match'RGBGen :: (a : Type->Type) -> a 'RGBGen -> (b:Type) -> a b -> a b
77'AlphaGen :: Type 77'AlphaGen :: Type
78A_Wave :: 'Wave->'AlphaGen 78A_Wave :: 'Wave->'AlphaGen
79A_Const :: 'Float->'AlphaGen 79A_Const :: 'Float->'AlphaGen
80A_Portal :: 'AlphaGen 80A_Portal :: 'AlphaGen
81A_Identity :: 'AlphaGen 81A_Identity :: 'AlphaGen
82A_Entity :: 'AlphaGen 82A_Entity :: 'AlphaGen
83A_OneMinusEntity :: 'AlphaGen 83A_OneMinusEntity :: 'AlphaGen
84A_Vertex :: 'AlphaGen 84A_Vertex :: 'AlphaGen
85A_LightingSpecular :: 'AlphaGen 85A_LightingSpecular :: 'AlphaGen
86A_OneMinusVertex :: 'AlphaGen 86A_OneMinusVertex :: 'AlphaGen
87'AlphaGenCase :: (a : 'AlphaGen->Type) -> ((b:'Wave) -> a (A_Wave b)) -> ((c:'Float) -> a (A_Const c)) -> a A_Portal -> a A_Identity -> a A_Entity -> a A_OneMinusEntity -> a A_Vertex -> a A_LightingSpecular -> a A_OneMinusVertex -> (d:'AlphaGen) -> a d 87'AlphaGenCase :: (a : 'AlphaGen->Type) -> ((b:'Wave) -> a (A_Wave b)) -> ((c:'Float) -> a (A_Const c)) -> a A_Portal -> a A_Identity -> a A_Entity -> a A_OneMinusEntity -> a A_Vertex -> a A_LightingSpecular -> a A_OneMinusVertex -> (d:'AlphaGen) -> a d
88match'AlphaGen :: (a : Type->Type) -> a 'AlphaGen -> (b:Type) -> a b -> a b 88match'AlphaGen :: (a : Type->Type) -> a 'AlphaGen -> (b:Type) -> a b -> a b
89'TCGen :: Type 89'TCGen :: Type
90TG_Base :: 'TCGen 90TG_Base :: 'TCGen
91TG_Lightmap :: 'TCGen 91TG_Lightmap :: 'TCGen
92TG_Environment :: 'TCGen 92TG_Environment :: 'TCGen
93TG_Vector :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'TCGen 93TG_Vector :: 'Vec 3 'Float -> 'Vec 3 'Float -> 'TCGen
94TG_Undefined :: 'TCGen 94TG_Undefined :: 'TCGen
95'TCGenCase :: (a : 'TCGen->Type) -> a TG_Base -> a TG_Lightmap -> a TG_Environment -> ((b : 'Vec 3 'Float) -> (c : 'Vec 3 'Float) -> a (TG_Vector b c)) -> a TG_Undefined -> (d:'TCGen) -> a d 95'TCGenCase :: (a : 'TCGen->Type) -> a TG_Base -> a TG_Lightmap -> a TG_Environment -> ((b : 'Vec 3 'Float) -> (c : 'Vec 3 'Float) -> a (TG_Vector b c)) -> a TG_Undefined -> (d:'TCGen) -> a d
96match'TCGen :: (a : Type->Type) -> a 'TCGen -> (b:Type) -> a b -> a b 96match'TCGen :: (a : Type->Type) -> a 'TCGen -> (b:Type) -> a b -> a b
97'TCMod :: Type 97'TCMod :: Type
98TM_EntityTranslate :: 'TCMod 98TM_EntityTranslate :: 'TCMod
99TM_Rotate :: 'Float->'TCMod 99TM_Rotate :: 'Float->'TCMod
100TM_Scroll :: 'Float -> 'Float->'TCMod 100TM_Scroll :: 'Float -> 'Float->'TCMod
101TM_Scale :: 'Float -> 'Float->'TCMod 101TM_Scale :: 'Float -> 'Float->'TCMod
102TM_Stretch :: 'Wave->'TCMod 102TM_Stretch :: 'Wave->'TCMod
103TM_Transform :: 'Float -> 'Float -> 'Float -> 'Float -> 'Float -> 'Float->'TCMod 103TM_Transform :: 'Float -> 'Float -> 'Float -> 'Float -> 'Float -> 'Float->'TCMod
104TM_Turb :: 'Float -> 'Float -> 'Float -> 'Float->'TCMod 104TM_Turb :: 'Float -> 'Float -> 'Float -> 'Float->'TCMod
105'TCModCase :: (a : 'TCMod->Type) -> a TM_EntityTranslate -> ((b:'Float) -> a (TM_Rotate b)) -> ((c:'Float) -> (d:'Float) -> a (TM_Scroll c d)) -> ((e:'Float) -> (f:'Float) -> a (TM_Scale e f)) -> ((g:'Wave) -> a (TM_Stretch g)) -> ((h:'Float) -> (i:'Float) -> (j:'Float) -> (k:'Float) -> (l:'Float) -> (m:'Float) -> a (TM_Transform h i j k l m)) -> ((n:'Float) -> (o:'Float) -> (p:'Float) -> (q:'Float) -> a (TM_Turb n o p q)) -> (r:'TCMod) -> a r 105'TCModCase :: (a : 'TCMod->Type) -> a TM_EntityTranslate -> ((b:'Float) -> a (TM_Rotate b)) -> ((c:'Float) -> (d:'Float) -> a (TM_Scroll c d)) -> ((e:'Float) -> (f:'Float) -> a (TM_Scale e f)) -> ((g:'Wave) -> a (TM_Stretch g)) -> ((h:'Float) -> (i:'Float) -> (j:'Float) -> (k:'Float) -> (l:'Float) -> (m:'Float) -> a (TM_Transform h i j k l m)) -> ((n:'Float) -> (o:'Float) -> (p:'Float) -> (q:'Float) -> a (TM_Turb n o p q)) -> (r:'TCMod) -> a r
106match'TCMod :: (a : Type->Type) -> a 'TCMod -> (b:Type) -> a b -> a b 106match'TCMod :: (a : Type->Type) -> a 'TCMod -> (b:Type) -> a b -> a b
107'StageTexture :: Type 107'StageTexture :: Type
108ST_Map :: 'String->'StageTexture 108ST_Map :: 'String->'StageTexture
109ST_ClampMap :: 'String->'StageTexture 109ST_ClampMap :: 'String->'StageTexture
110ST_AnimMap :: 'Float -> 'List 'String -> 'StageTexture 110ST_AnimMap :: 'Float -> 'List 'String -> 'StageTexture
111ST_Lightmap :: 'StageTexture 111ST_Lightmap :: 'StageTexture
112ST_WhiteImage :: 'StageTexture 112ST_WhiteImage :: 'StageTexture
113'StageTextureCase :: (a : 'StageTexture->Type) -> ((b:'String) -> a (ST_Map b)) -> ((c:'String) -> a (ST_ClampMap c)) -> ((d:'Float) -> (e : 'List 'String) -> a (ST_AnimMap d e)) -> a ST_Lightmap -> a ST_WhiteImage -> (f:'StageTexture) -> a f 113'StageTextureCase :: (a : 'StageTexture->Type) -> ((b:'String) -> a (ST_Map b)) -> ((c:'String) -> a (ST_ClampMap c)) -> ((d:'Float) -> (e : 'List 'String) -> a (ST_AnimMap d e)) -> a ST_Lightmap -> a ST_WhiteImage -> (f:'StageTexture) -> a f
114match'StageTexture :: (a : Type->Type) -> a 'StageTexture -> (b:Type) -> a b -> a b 114match'StageTexture :: (a : Type->Type) -> a 'StageTexture -> (b:Type) -> a b -> a b
115'AlphaFunction :: Type 115'AlphaFunction :: Type
116A_Gt0 :: 'AlphaFunction 116A_Gt0 :: 'AlphaFunction
117A_Lt128 :: 'AlphaFunction 117A_Lt128 :: 'AlphaFunction
118A_Ge128 :: 'AlphaFunction 118A_Ge128 :: 'AlphaFunction
119'AlphaFunctionCase :: (a : 'AlphaFunction->Type) -> a A_Gt0 -> a A_Lt128 -> a A_Ge128 -> (b:'AlphaFunction) -> a b 119'AlphaFunctionCase :: (a : 'AlphaFunction->Type) -> a A_Gt0 -> a A_Lt128 -> a A_Ge128 -> (b:'AlphaFunction) -> a b
120match'AlphaFunction :: (a : Type->Type) -> a 'AlphaFunction -> (b:Type) -> a b -> a b 120match'AlphaFunction :: (a : Type->Type) -> a 'AlphaFunction -> (b:Type) -> a b -> a b
121'DepthFunction :: Type 121'DepthFunction :: Type
122D_Equal :: 'DepthFunction 122D_Equal :: 'DepthFunction
123D_Lequal :: 'DepthFunction 123D_Lequal :: 'DepthFunction
124'DepthFunctionCase :: (a : 'DepthFunction->Type) -> a D_Equal -> a D_Lequal -> (b:'DepthFunction) -> a b 124'DepthFunctionCase :: (a : 'DepthFunction->Type) -> a D_Equal -> a D_Lequal -> (b:'DepthFunction) -> a b
125match'DepthFunction :: (a : Type->Type) -> a 'DepthFunction -> (b:Type) -> a b -> a b 125match'DepthFunction :: (a : Type->Type) -> a 'DepthFunction -> (b:Type) -> a b -> a b
126'StageAttrs :: Type 126'StageAttrs :: Type
127StageAttrs :: 'Maybe ('Blending', 'Blending') -> 'RGBGen -> 'AlphaGen -> 'TCGen -> 'List 'TCMod -> 'StageTexture -> 'Bool -> 'DepthFunction -> 'Maybe 'AlphaFunction -> 'Bool -> 'String->'StageAttrs 127StageAttrs :: 'Maybe ('Blending', 'Blending') -> 'RGBGen -> 'AlphaGen -> 'TCGen -> 'List 'TCMod -> 'StageTexture -> 'Bool -> 'DepthFunction -> 'Maybe 'AlphaFunction -> 'Bool -> 'String->'StageAttrs
128'StageAttrsCase :: (a : 'StageAttrs->Type) -> ((b : 'Maybe ('Blending', 'Blending')) -> (c:'RGBGen) -> (d:'AlphaGen) -> (e:'TCGen) -> (f : 'List 'TCMod) -> (g:'StageTexture) -> (h:'Bool) -> (i:'DepthFunction) -> (j : 'Maybe 'AlphaFunction) -> (k:'Bool) -> (l:'String) -> a (StageAttrs b c d e f g h i j k l)) -> (m:'StageAttrs) -> a m 128'StageAttrsCase :: (a : 'StageAttrs->Type) -> ((b : 'Maybe ('Blending', 'Blending')) -> (c:'RGBGen) -> (d:'AlphaGen) -> (e:'TCGen) -> (f : 'List 'TCMod) -> (g:'StageTexture) -> (h:'Bool) -> (i:'DepthFunction) -> (j : 'Maybe 'AlphaFunction) -> (k:'Bool) -> (l:'String) -> a (StageAttrs b c d e f g h i j k l)) -> (m:'StageAttrs) -> a m
129match'StageAttrs :: (a : Type->Type) -> a 'StageAttrs -> (b:Type) -> a b -> a b 129match'StageAttrs :: (a : Type->Type) -> a 'StageAttrs -> (b:Type) -> a b -> a b
130saBlend :: 'StageAttrs -> 'Maybe ('Blending', 'Blending') 130saBlend :: 'StageAttrs -> 'Maybe ('Blending', 'Blending')
131saRGBGen :: 'StageAttrs->'RGBGen 131saRGBGen :: 'StageAttrs->'RGBGen
132saAlphaGen :: 'StageAttrs->'AlphaGen 132saAlphaGen :: 'StageAttrs->'AlphaGen
133saTCGen :: 'StageAttrs->'TCGen 133saTCGen :: 'StageAttrs->'TCGen
134saTCMod :: 'StageAttrs -> 'List 'TCMod 134saTCMod :: 'StageAttrs -> 'List 'TCMod
135saTexture :: 'StageAttrs->'StageTexture 135saTexture :: 'StageAttrs->'StageTexture
136saDepthWrite :: 'StageAttrs->'Bool 136saDepthWrite :: 'StageAttrs->'Bool
137saDepthFunc :: 'StageAttrs->'DepthFunction 137saDepthFunc :: 'StageAttrs->'DepthFunction
138saAlphaFunc :: 'StageAttrs -> 'Maybe 'AlphaFunction 138saAlphaFunc :: 'StageAttrs -> 'Maybe 'AlphaFunction
139saDepthMaskExplicit :: 'StageAttrs->'Bool 139saDepthMaskExplicit :: 'StageAttrs->'Bool
140saTextureUniform :: 'StageAttrs->'String 140saTextureUniform :: 'StageAttrs->'String
141defaultStageAttrs :: 'StageAttrs 141defaultStageAttrs :: 'StageAttrs
142'CommonAttrs :: Type 142'CommonAttrs :: Type
143CommonAttrs :: () -> () -> 'Bool -> 'Float -> 'Bool -> 'Bool -> 'CullType -> 'List 'Deform -> 'Bool -> 'Bool -> 'List 'StageAttrs -> 'Bool->'CommonAttrs 143CommonAttrs :: () -> () -> 'Bool -> 'Float -> 'Bool -> 'Bool -> 'CullType -> 'List 'Deform -> 'Bool -> 'Bool -> 'List 'StageAttrs -> 'Bool->'CommonAttrs
144'CommonAttrsCase :: (a : 'CommonAttrs->Type) -> ((b:()) -> (c:()) -> (d:'Bool) -> (e:'Float) -> (f:'Bool) -> (g:'Bool) -> (h:'CullType) -> (i : 'List 'Deform) -> (j:'Bool) -> (k:'Bool) -> (l : 'List 'StageAttrs) -> (m:'Bool) -> a (CommonAttrs b c d e f g h i j k l m)) -> (n:'CommonAttrs) -> a n 144'CommonAttrsCase :: (a : 'CommonAttrs->Type) -> ((b:()) -> (c:()) -> (d:'Bool) -> (e:'Float) -> (f:'Bool) -> (g:'Bool) -> (h:'CullType) -> (i : 'List 'Deform) -> (j:'Bool) -> (k:'Bool) -> (l : 'List 'StageAttrs) -> (m:'Bool) -> a (CommonAttrs b c d e f g h i j k l m)) -> (n:'CommonAttrs) -> a n
145match'CommonAttrs :: (a : Type->Type) -> a 'CommonAttrs -> (b:Type) -> a b -> a b 145match'CommonAttrs :: (a : Type->Type) -> a 'CommonAttrs -> (b:Type) -> a b -> a b
146caSkyParms :: 'CommonAttrs->() 146caSkyParms :: 'CommonAttrs->()
147caFogParms :: 'CommonAttrs->() 147caFogParms :: 'CommonAttrs->()
148caPortal :: 'CommonAttrs->'Bool 148caPortal :: 'CommonAttrs->'Bool
149caSort :: 'CommonAttrs->'Float 149caSort :: 'CommonAttrs->'Float
150caEntityMergable :: 'CommonAttrs->'Bool 150caEntityMergable :: 'CommonAttrs->'Bool
151caFogOnly :: 'CommonAttrs->'Bool 151caFogOnly :: 'CommonAttrs->'Bool
152caCull :: 'CommonAttrs->'CullType 152caCull :: 'CommonAttrs->'CullType
153caDeformVertexes :: 'CommonAttrs -> 'List 'Deform 153caDeformVertexes :: 'CommonAttrs -> 'List 'Deform
154caNoMipMaps :: 'CommonAttrs->'Bool 154caNoMipMaps :: 'CommonAttrs->'Bool
155caPolygonOffset :: 'CommonAttrs->'Bool 155caPolygonOffset :: 'CommonAttrs->'Bool
156caStages :: 'CommonAttrs -> 'List 'StageAttrs 156caStages :: 'CommonAttrs -> 'List 'StageAttrs
157caIsSky :: 'CommonAttrs->'Bool 157caIsSky :: 'CommonAttrs->'Bool
158defaultCommonAttrs :: 'CommonAttrs 158defaultCommonAttrs :: 'CommonAttrs
159------------ tooltips 159------------ tooltips
160testdata/performance/Material.lc 7:18-7:23 Type 160testdata/performance/Material.lc 7:18-7:23 Type
161testdata/performance/Material.lc 8:1-8:14 Float 161testdata/performance/Material.lc 8:1-8:14 Float
diff --git a/testdata/performance/SampleMaterial.out b/testdata/performance/SampleMaterial.out
index 21d41c59..a3adf868 100644
--- a/testdata/performance/SampleMaterial.out
+++ b/testdata/performance/SampleMaterial.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3sampleMaterial :: 'List ('String, 'CommonAttrs) 3sampleMaterial :: 'List ('String, 'CommonAttrs)
4------------ tooltips 4------------ tooltips
5testdata/performance/SampleMaterial.lc 3:1-3:15 List (String, CommonAttrs) 5testdata/performance/SampleMaterial.lc 3:1-3:15 List (String, CommonAttrs)
6testdata/performance/SampleMaterial.lc 4:3-2183:4 List (String, CommonAttrs) 6testdata/performance/SampleMaterial.lc 4:3-2183:4 List (String, CommonAttrs)
diff --git a/testdata/primes.out b/testdata/primes.out
index 703d8fba..39d3d4b9 100644
--- a/testdata/primes.out
+++ b/testdata/primes.out
@@ -1 +1 @@
31 \ No newline at end of file 31 \ No newline at end of file
diff --git a/testdata/record01.reject.out b/testdata/record01.reject.out
index 32ed09fc..b2d8d0e8 100644
--- a/testdata/record01.reject.out
+++ b/testdata/record01.reject.out
@@ -1,7 +1,7 @@
1type error: can not unify 1type error: can not unify
2'FrameBuffer b_ a_ 2'FrameBuffer b_ a_
3with 3with
4'Float 4'Float
5 5
6in testdata/record01.reject.lc:26:15: 6in testdata/record01.reject.lc:26:15:
7 in ScreenOut record.fieldA 7 in ScreenOut record.fieldA
@@ -9,9 +9,9 @@ in testdata/record01.reject.lc:26:15:
9 9
10------------ trace 10------------ trace
11!type error: can not unify 11!type error: can not unify
12'FrameBuffer b_ a_ 12'FrameBuffer b_ a_
13with 13with
14'Float 14'Float
15 15
16in testdata/record01.reject.lc:26:15: 16in testdata/record01.reject.lc:26:15:
17 in ScreenOut record.fieldA 17 in ScreenOut record.fieldA
diff --git a/testdata/record02.out b/testdata/record02.out
index 65af037c..f832724c 100644
--- a/testdata/record02.out
+++ b/testdata/record02.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/reduce06.out b/testdata/reduce06.out
index 65af037c..f832724c 100644
--- a/testdata/reduce06.out
+++ b/testdata/reduce06.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/swizzling.out b/testdata/swizzling.out
index 65af037c..f832724c 100644
--- a/testdata/swizzling.out
+++ b/testdata/swizzling.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/traceTest.out b/testdata/traceTest.out
index 06096c39..c1529ca6 100644
--- a/testdata/traceTest.out
+++ b/testdata/traceTest.out
@@ -1,10 +1,10 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3id :: {a} -> a->a 3id :: {a} -> a->a
4'X :: {a} -> a->Type 4'X :: {a} -> a->Type
5'XCase :: {a} -> {b:a} -> (c : 'X a b -> Type) -> (d : 'X a b) -> c d 5'XCase :: {a} -> {b:a} -> (c : 'X a b -> Type) -> (d : 'X a b) -> c d
6match'X :: (a : Type->Type) -> ({b} -> (c:b) -> a ('X b c)) -> (d:Type) -> a d -> a d 6match'X :: (a : Type->Type) -> ({b} -> (c:b) -> a ('X b c)) -> (d:Type) -> a d -> a d
7x :: 'X (Type -> Type->Type) (\(a:Type) (b:Type) -> (a, b)) 7x :: 'X (Type -> Type->Type) (\(a:Type) (b:Type) -> (a, b))
8------------ tooltips 8------------ tooltips
9testdata/traceTest.lc 6:1-6:3 {a} -> a->a 9testdata/traceTest.lc 6:1-6:3 {a} -> a->a
10testdata/traceTest.lc 6:8-6:9 b_ 10testdata/traceTest.lc 6:8-6:9 b_
diff --git a/testdata/typeclass.out b/testdata/typeclass.out
index 36725be0..e0da48d1 100644
--- a/testdata/typeclass.out
+++ b/testdata/typeclass.out
@@ -1,11 +1,11 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3not :: 'Bool->'Bool 3not :: 'Bool->'Bool
4&& :: 'Bool -> 'Bool->'Bool 4&& :: 'Bool -> 'Bool->'Bool
5|| :: 'Bool -> 'Bool->'Bool 5|| :: 'Bool -> 'Bool->'Bool
6'Eq :: Type->Type 6'Eq :: Type->Type
7== :: {a} -> {_ : 'Eq a} -> a -> a->'Bool 7== :: {a} -> {_ : 'Eq a} -> a -> a->'Bool
8/= :: {a} -> {_ : 'Eq a} -> a -> a->'Bool 8/= :: {a} -> {_ : 'Eq a} -> a -> a->'Bool
9------------ tooltips 9------------ tooltips
10testdata/typeclass.lc 8:1-8:4 Bool->Bool 10testdata/typeclass.lc 8:1-8:4 Bool->Bool
11testdata/typeclass.lc 8:12-8:17 Bool 11testdata/typeclass.lc 8:12-8:17 Bool
diff --git a/testdata/typeclass0.out b/testdata/typeclass0.out
index 65af037c..f832724c 100644
--- a/testdata/typeclass0.out
+++ b/testdata/typeclass0.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/typesig.reject.out b/testdata/typesig.reject.out
index 923cc1be..05632bc8 100644
--- a/testdata/typesig.reject.out
+++ b/testdata/typesig.reject.out
@@ -1,12 +1,12 @@
1focus checkMetas: \a -> (\(b:Type) -> primFix a b) (\(a:=Type) -> \(c:Type) -> <<HERE>>) 1focus checkMetas: \a -> (\(b:Type) -> primFix a b) (\(a:=Type) -> \(c:Type) -> <<HERE>>)
2\(a : Type~a_) (b : b_~'X) -> typeAnn c_ (labend X) 2\(a : Type~a_) (b : b_~'X) -> typeAnn c_ (labend X)
3------------ trace 3------------ trace
4'X :: Type 4'X :: Type
5X :: 'X 5X :: 'X
6'XCase :: (a : 'X->Type) -> a X -> (b:'X) -> a b 6'XCase :: (a : 'X->Type) -> a X -> (b:'X) -> a b
7match'X :: (a : Type->Type) -> a 'X -> (b:Type) -> a b -> a b 7match'X :: (a : Type->Type) -> a 'X -> (b:Type) -> a b -> a b
8!focus checkMetas: \a -> (\(b:Type) -> primFix a b) (\(a:=Type) -> \(c:Type) -> <<HERE>>) 8!focus checkMetas: \a -> (\(b:Type) -> primFix a b) (\(a:=Type) -> \(c:Type) -> <<HERE>>)
9\(a : Type~a_) (b : b_~'X) -> typeAnn c_ (labend X) 9\(a : Type~a_) (b : b_~'X) -> typeAnn c_ (labend X)
10------------ tooltips 10------------ tooltips
11testdata/typesig.reject.lc 4:6-4:7 Type 11testdata/typesig.reject.lc 4:6-4:7 Type
12testdata/typesig.reject.lc 4:6-4:11 Type 12testdata/typesig.reject.lc 4:6-4:11 Type
diff --git a/testdata/typesigctx.reject.out b/testdata/typesigctx.reject.out
index 6696ad4a..63c575ce 100644
--- a/testdata/typesigctx.reject.out
+++ b/testdata/typesigctx.reject.out
@@ -2,12 +2,12 @@ type error: no instance of 'Show' on ???
2in Wildcard2 builtin 'Type 2in Wildcard2 builtin 'Type
3 3
4------------ trace 4------------ trace
5'X :: Type 5'X :: Type
6X :: 'X 6X :: 'X
7'XCase :: (a : 'X->Type) -> a X -> (b:'X) -> a b 7'XCase :: (a : 'X->Type) -> a X -> (b:'X) -> a b
8match'X :: (a : Type->Type) -> a 'X -> (b:Type) -> a b -> a b 8match'X :: (a : Type->Type) -> a 'X -> (b:Type) -> a b -> a b
9'Show' :: Type->Type 9'Show' :: Type->Type
10show' :: {a} -> {_ : 'Show' a} -> a->'X 10show' :: {a} -> {_ : 'Show' a} -> a->'X
11!type error: no instance of 'Show' on ??? 11!type error: no instance of 'Show' on ???
12in Wildcard2 builtin 'Type 12in Wildcard2 builtin 'Type
13 13
diff --git a/testdata/typesyn.out b/testdata/typesyn.out
index 65af037c..f832724c 100644
--- a/testdata/typesyn.out
+++ b/testdata/typesyn.out
@@ -1 +1 @@
True \ No newline at end of file True \ No newline at end of file
diff --git a/testdata/where.out b/testdata/where.out
index 5f12696d..2b62fedf 100644
--- a/testdata/where.out
+++ b/testdata/where.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3f :: 'Float 3f :: 'Float
4------------ tooltips 4------------ tooltips
5testdata/where.lc 3:1-3:2 Float 5testdata/where.lc 3:1-3:2 Float
6testdata/where.lc 3:5-3:6 Float 6testdata/where.lc 3:5-3:6 Float
diff --git a/testdata/zip01.out b/testdata/zip01.out
index c77e525e..02f84ae5 100644
--- a/testdata/zip01.out
+++ b/testdata/zip01.out
@@ -1,6 +1,6 @@
1main is not found 1main is not found
2------------ trace 2------------ trace
3zip2 :: {a} -> {b} -> 'List a -> 'List b -> 'List (a, b) 3zip2 :: {a} -> {b} -> 'List a -> 'List b -> 'List (a, b)
4------------ tooltips 4------------ tooltips
5testdata/zip01.lc 1:9-1:12 Type 5testdata/zip01.lc 1:9-1:12 Type
6testdata/zip01.lc 1:9-1:30 Type 6testdata/zip01.lc 1:9-1:30 Type