Evan Czaplicki
|
a97b9951d0
|
Add checks for port types to ensure that only JS values go through ports and that type annotations are correct and consistent
|
2014-01-05 10:41:40 +01:00 |
|
Evan Czaplicki
|
c966776788
|
Add -W flag to many files, mostly getting rid of dead imports
|
2014-01-04 10:54:46 +01:00 |
|
Evan Czaplicki
|
5e3f94ce60
|
Update for new type of module (no t v)
|
2014-01-02 23:53:30 -08:00 |
|
Justin Leitgeb
|
576bc28142
|
Print types even when the elm file has already been compiled.
This fixes issue #299, where types are not printed even when the
`--print-types` option is given for an elm file that has already
been compiled.
|
2013-10-28 16:29:28 -05:00 |
|
Evan Czaplicki
|
95ec3a822e
|
Stop using error when constraining patterns and when instantiating source types
|
2013-08-25 20:23:49 -07:00 |
|
Evan Czaplicki
|
18c67cb345
|
Properly perform extraChecks
|
2013-08-21 19:45:23 -07:00 |
|
Evan Czaplicki
|
4d25352f90
|
Show realiased types when printing errors and when printing module types
|
2013-08-21 19:08:03 -07:00 |
|
Evan Czaplicki
|
7093436b13
|
Switch to SrcTypes after type inference, not in compiler
|
2013-08-21 14:23:11 -07:00 |
|
Evan Czaplicki
|
b5979b4aaf
|
Add occurs check and a test to make sure it works
|
2013-08-19 22:39:41 -07:00 |
|
Evan Czaplicki
|
70f1242bd0
|
Check that main is a Signal or (Signal Element), add tests for this case
|
2013-08-19 17:47:37 -07:00 |
|
Evan Czaplicki
|
51bc878b51
|
Use new Located datastructure, add source strings where appropriate
|
2013-08-03 11:41:33 -07:00 |
|
Evan Czaplicki
|
b1f53d04ed
|
Pipe source locations through the type checker
|
2013-07-30 16:01:20 -07:00 |
|
Evan Czaplicki
|
ec24738e9c
|
Get rid of dead code
|
2013-07-29 19:25:58 +02:00 |
|
Evan Czaplicki
|
eb96d7ad8d
|
Get rid of current canonicalization code
|
2013-07-29 11:53:45 +02:00 |
|
Evan Czaplicki
|
da346ea6a1
|
Show type errors in the order they appear in the source file
|
2013-07-27 00:53:34 +02:00 |
|
Evan Czaplicki
|
2a5bee06fc
|
Include type aliases from dependencies
|
2013-07-26 17:35:48 +02:00 |
|
Evan Czaplicki
|
0f85a2fcfa
|
Resolve type aliases in instantiator
|
2013-07-26 15:08:04 +02:00 |
|
Evan Czaplicki
|
6948858f78
|
Allow multiple different imports of the same module, clean up canonicalize code
|
2013-07-26 12:56:36 +02:00 |
|
Evan Czaplicki
|
0681fbe583
|
Get rid of dead function and give instantiateTypeWithContext a shorter name
|
2013-07-26 12:22:15 +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
|
8ffcf9e80e
|
Prettier printing for infix operator definitions
|
2013-07-23 15:43:21 +02:00 |
|
Evan Czaplicki
|
802be96e57
|
Fix issue in which patterns could become too general
|
2013-07-23 15:32:08 +02:00 |
|
Evan Czaplicki
|
138e99cc81
|
Begin to canonicalize imported values and types
|
2013-07-22 14:42:45 +02:00 |
|
Evan Czaplicki
|
81522b306a
|
Make cross-module types aware of user-specified aliases
|
2013-07-22 00:23:26 +02:00 |
|
Evan Czaplicki
|
c140d690fc
|
First draft of cross-module type checking
Currently, all top-level types are imported. No alias resolution
happens so you need to use "import open M" atm.
|
2013-07-21 22:50:48 +02:00 |
|
Evan Czaplicki
|
b0f96a2eab
|
Switch from [Def t v] to (LExpr t v) for program representation
|
2013-07-19 18:02:24 +02:00 |
|
Evan Czaplicki
|
a3a7b3ef62
|
Refactor type environment
Migrate some functions to Environment.hs, add built-in types like _List
and _Tuple2.
|
2013-07-17 19:29:27 +02:00 |
|
Evan Czaplicki
|
8145e600fc
|
Create MetadataModule for more refined information about modules
Used in most places to break a module into more orthogonal components.
Some of this data needs to be serialized into the interface files.
|
2013-07-16 21:42:37 +02:00 |
|
Evan Czaplicki
|
ce357b3d0d
|
Switch to reporting errors with [Doc] for prettier layout.
|
2013-07-16 14:52:50 +02:00 |
|
Evan Czaplicki
|
67ef1ec77b
|
Create the Type.Inference module which handles type inference from
start to finish. Give it a Module and it returns a dictionary mapping
top-level values to types.
|
2013-07-16 00:38:31 +02:00 |
|