Commit graph

1328 commits

Author SHA1 Message Date
Evan Czaplicki
c19ccfe56a Stop importing the Native library by default 2013-07-26 00:19:43 +02:00
Evan Czaplicki
727d708289 Get libraries to compile 2013-07-26 00:19:21 +02:00
Evan Czaplicki
17535831fe Get libraries compiling 2013-07-26 00:07:07 +02:00
Evan Czaplicki
ec8687610f Move type annotations out of Environment and into the Basics library 2013-07-26 00:06:52 +02:00
Evan Czaplicki
4e1f79c2d5 Get List and Maybe compiling with the Basics module 2013-07-25 23:55:16 +02:00
Evan Czaplicki
7968fa5bff Make Basics compile 2013-07-25 23:52:39 +02:00
Evan Czaplicki
c4880ca5de Rename Prelude to Basics to get rid of circular dependencies 2013-07-25 23:24:33 +02:00
Evan Czaplicki
d77dbb03ed Switch to new type signatures 2013-07-25 23:21:15 +02:00
Evan Czaplicki
eba7e6292e Trim some unused dependencies 2013-07-25 20:53:54 +02:00
Evan Czaplicki
016a199b50 Start using Metadata.Prelude 2013-07-25 20:53:22 +02:00
Evan Czaplicki
d4b23664e4 Rename Metadata.Libraries to Metadata.Prelude 2013-07-25 20:44:41 +02:00
Evan Czaplicki
a4468d2eac Combine two Metadata files into one 2013-07-25 20:39:23 +02:00
Evan Czaplicki
0db809ff4c Switch formatting for language pragmas 2013-07-25 20:34:04 +02:00
Evan Czaplicki
e702370b9e Rename a module 2013-07-25 20:21:17 +02:00
Evan Czaplicki
4c02f6ba7d Start reworking the Metadata modules 2013-07-25 20:20:33 +02:00
Evan Czaplicki
6c808aaa47 change whitespace 2013-07-25 20:19:50 +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
642b1f7fcc Properly handle constrained variables when converting from Src.Type to Type.Type 2013-07-25 17:36:52 +02:00
Evan Czaplicki
609cc3df96 Unify any constrained variables with the same super-type 2013-07-25 17:10:01 +02:00
Evan Czaplicki
a05c82f58b Mess with whitespace 2013-07-25 17:09:23 +02:00
Evan Czaplicki
d9c1317a25 Add pretty printing for record types 2013-07-25 17:09:10 +02:00
Evan Czaplicki
11c1b76e9c Update to use the "number" type variable 2013-07-25 16:40:56 +02:00
Evan Czaplicki
067773d601 Update the List library to use the number, comparable, and appendable type variables 2013-07-25 16:40:39 +02:00
Evan Czaplicki
d059c362d9 Fix the type of String literals 2013-07-25 16:02:49 +02:00
Evan Czaplicki
abb6dc19f6 Prettier printing for infix functions like div 2013-07-25 15:55:55 +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
856360bd94 Get rid of unused part of the type error message 2013-07-25 15:46:48 +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
d456cec5c8 Overload literal numbers without a decimal point to be either Ints or Floats 2013-07-25 01:25:17 +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
666d9f8ca3 Assume all variables with the "Native." prefix exist and have type "a" 2013-07-25 01:23:30 +02:00
Evan Czaplicki
2609f5dda7 Add support for let (==>) = Lambda in … 2013-07-23 17:00:05 +02:00
Evan Czaplicki
7b90975dad Simplify code to check for structural errors 2013-07-23 16:15:56 +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
175798f6d2 Fix type constraints for case-expressions 2013-07-23 14:59:53 +02:00
Evan Czaplicki
f37e05af5e Fix type constraints for PData
Was generating functions based on free type variables, not on the kind
of the constructor.
2013-07-23 14:59:34 +02:00
Evan Czaplicki
d15d84deba Get patterns to type-check with the value in the case expression 2013-07-22 15:10:48 +02:00
Evan Czaplicki
eaa751d987 Make pretty printing for types prettier 2013-07-22 14:52:57 +02:00
Evan Czaplicki
138e99cc81 Begin to canonicalize imported values and types 2013-07-22 14:42:45 +02:00
Evan Czaplicki
eb722a20dc Make a type less general 2013-07-22 14:41:55 +02:00
Evan Czaplicki
d9471f6c62 Add flexible variables for type annotated values
Without this, things are not generalized properly.
2013-07-22 14:41:12 +02:00
Evan Czaplicki
6f94400f2d Begin parsing types and patterns such as A.B.C 2013-07-22 14:40:32 +02:00
Evan Czaplicki
97bd68a796 Make parse errors print more nicely 2013-07-22 14:40:00 +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
4bcde7e799 Add flag for printing a whole program 2013-07-21 22:49:42 +02:00
Evan Czaplicki
1f8b7bbc98 Introduce TypeLibrary alias, a minor cosmetic change 2013-07-21 09:23:01 +02:00
Evan Czaplicki
0fd1f677a5 Get things in place to pass Prelude interfaces 2013-07-21 07:17:01 +02:00
Evan Czaplicki
b1dd1574a8 Begin passing module interfaces when compiling dependencies 2013-07-21 07:14:13 +02:00