Skip to content

Instantly share code, notes, and snippets.

@strager
Created October 19, 2013 17:11
Show Gist options
  • Select an option

  • Save strager/7058626 to your computer and use it in GitHub Desktop.

Select an option

Save strager/7058626 to your computer and use it in GitHub Desktop.
forall _0 _1 . (t0 [t1 (type var a)] [Char] -> t0 Int + ())
("unify",t4,t3)
("declare",_4,t3)
("unify",(t4 -> t3 t2 (type of x) + ()),(t6 -> t6 t5 + ()))
("declare",_2,t5)
("declare",_3,t6)
("unify",t10,t7)
("declare",_10,t7)
("unify",t7 [t5],t8 [t9] [t9])
("declare",_5,t9)
("declare2",_7,t8 [t9])
("unify",t11,t10 t2 (type of x))
("declare2",_11,t10 t2 (type of x))
t13
t5
t9
t15
t15
t15
("unify",(t12 [t13] [Char] -> t12 Int + ()),(t14 [t15] t15 -> t14 [t15] + ()))
("unify",t17,<empty>)
("unify",t17,t16)
("declare2",_17,<empty>)
bad.ktn:6:1: error: cannot solve scalar type constraint Int = [t15]
bad.ktn:6:1: note: t15 is from here
bad.ktn:6:9: note: Int is from here
bad.ktn:8:7: note: [t15] is from here
~/P/kitten> cat bad.ktn
/*
def bar (a [a] -> Char):
vector 1 +
*/
def baz ([a] [Char] -> Int):
->x
[x] __add_vector
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment