Commit graph

15 commits

Author SHA1 Message Date
Evan Czaplicki
fd63aff70b Correct the code that unifies records 2013-07-27 00:15:26 +02:00
Evan Czaplicki
c1d5f86e82 Simplify type error messages 2013-07-26 21:18:44 +02:00
Evan Czaplicki
42065eb075 Generate fewer intermediate variables during record unification 2013-07-26 19:39:42 +02:00
Evan Czaplicki
2a51470fc1 Implement unification for records 2013-07-26 19:04:43 +02:00
Evan Czaplicki
9fe6c9a564 Change functions for creating type variables, distinguish names of different constraint type variables 2013-07-25 18:07:04 +02:00
Evan Czaplicki
609cc3df96 Unify any constrained variables with the same super-type 2013-07-25 17:10:01 +02:00
Evan Czaplicki
b6144aeb07 Properly unify constrained variables, serious changes here!!!
I also rewrote merge1 and merge2 which are dangerous functions to touch.
2013-07-25 15:48:58 +02:00
Evan Czaplicki
4e7ef5f177 Add definitions for functions that act on numbers and comparables
This will get moved into Elm code eventually
2013-07-25 14:54:21 +02:00
Evan Czaplicki
82ca695dca Add support for "number" type which can be either an Int or Float 2013-07-25 01:24:16 +02:00
Evan Czaplicki
4208b5c9de Remove some debugging stuff and generally clean up the code.
There was one potential error in which a debug needed to be a liftIO,
the computation it performed was not optional.
2013-07-12 11:05:03 +02:00
Evan Czaplicki
b5887f41c9 Get type inference working in the basic case. Begin working on
printing errors in a prettier way.
2013-07-10 14:31:57 +02:00
Evan Czaplicki
497d478d26 Get the solver working on basic programs. It outputs pretty types for the
variables in the program. Need to test further and start doing some benchmarking.
2013-07-09 21:52:05 +02:00
Evan Czaplicki
ca62ee64a9 Create type pools, have an organized model of state to flow through
the State Transformer during constraint solving and variable unification.
2013-07-09 10:25:50 +02:00
Evan Czaplicki
4c51159f2a Create a Type.Pool module specifically for variable pools. Start using
a state transformer to thread the pool and errors through.
2013-07-08 20:03:08 +02:00
Evan Czaplicki
ca8441ff2f Continue getting the new type-checker in order. 2013-07-07 12:52:48 +02:00