Evan Czaplicki
|
1609e61cba
|
Fix accidental creation of rigid variables when type-checking mixed record types when a type alias is given
Fixes the issue raised by Alexander
|
2013-08-12 14:27:42 -07:00 |
|
Evan Czaplicki
|
47aa48d9fd
|
Preemptively add "number" as a kind of flexible variable that can unify with an (Is Number)
This is similar to the recent issue with comparable brought up by Max.
|
2013-08-10 14:26:01 -07:00 |
|
Evan Czaplicki
|
3b27395e62
|
Fix issue unifying comparables brought up by Max on the lists
A flexible comparable should be able to unify with another comparable
|
2013-08-10 14:20:36 -07:00 |
|
Evan Czaplicki
|
53ef6d33c9
|
Give a better error message when trying to unify rigid type variables in a bad way
|
2013-08-06 21:20:32 -07:00 |
|
Evan Czaplicki
|
20e2ff0a28
|
Properly handle the qualified Text type
|
2013-08-01 15:38:40 -07:00 |
|
Evan Czaplicki
|
8006d8e54a
|
Report line numbers in type errors
|
2013-07-30 16:22:20 -07:00 |
|
Evan Czaplicki
|
3065f58924
|
Support appendable types
|
2013-07-30 08:58:09 -07:00 |
|
Evan Czaplicki
|
a1b7336547
|
Make comparable work fully and clean up code
|
2013-07-30 08:30:49 -07:00 |
|
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 |
|