Evan Czaplicki
51ba512914
Parse qualified infix functions
...
It is okay to say
4 `Time.since` Mouse.clicks
2013-08-01 15:38:19 -07:00
Evan Czaplicki
66e2a97d2a
Allow prefixes on FFI types
2013-08-01 15:37:34 -07:00
Evan Czaplicki
f9cc4516d8
Import qualified Text module by default
2013-07-31 23:47:29 -07:00
Evan Czaplicki
8f1f15cfeb
Fix pattern matching
2013-07-31 23:47:16 -07:00
Evan Czaplicki
ce527c0c07
Style change
2013-07-31 12:12:57 -07:00
Evan Czaplicki
4f595c2ca5
Eliminate dead code and reduce dependencies
2013-07-31 12:12:52 -07:00
Evan Czaplicki
a56efd851b
Check that imports actually exist in the known interfaces
2013-07-31 12:12:30 -07:00
Evan Czaplicki
2c96bf0c33
Get the haskell library working
2013-07-31 09:31:48 -07:00
Evan Czaplicki
e677f27bc5
add a type signature
2013-07-31 07:42:31 -07:00
Evan Czaplicki
a400ab140a
Get compling
2013-07-31 07:42:21 -07:00
Evan Czaplicki
3ef5284afd
Stop using the MultiWayIf extension
2013-07-30 22:57:13 -07:00
Evan Czaplicki
8006d8e54a
Report line numbers in type errors
2013-07-30 16:22:20 -07:00
Evan Czaplicki
b1f53d04ed
Pipe source locations through the type checker
2013-07-30 16:01:20 -07:00
Evan Czaplicki
c6868f1bd6
cosmetic change
2013-07-30 11:57:58 -07:00
Evan Czaplicki
a4c4cf0493
Use Location.none
less
2013-07-30 11:55:41 -07:00
Evan Czaplicki
b26edcc46e
Simplify representation of source locations
2013-07-30 11:43:42 -07:00
Evan Czaplicki
3065f58924
Support appendable types
2013-07-30 08:58:09 -07:00
Evan Czaplicki
ae6a3b36b5
Fix runtime code for comparing things
2013-07-30 08:44:23 -07:00
Evan Czaplicki
fa448548b8
Make error messages nicer
2013-07-30 08:31:05 -07:00
Evan Czaplicki
a1b7336547
Make comparable work fully and clean up code
2013-07-30 08:30:49 -07:00
Evan Czaplicki
3da8a71d00
Add ability to collect App1's into a Type constructor
...
Useful for determining if something is a Tuple or List
2013-07-30 08:29:52 -07:00
Evan Czaplicki
dfb27a7c67
Get rid of Paths_Elm to make sure things build properly for people.
2013-07-29 19:48:04 -07:00
Evan Czaplicki
1273f4deb3
Make sure that basic math operations generate the correct JS code.
2013-07-29 19:34:00 -07:00
Evan Czaplicki
25474f8310
Function args were in the reverse order!
2013-07-29 23:44:15 +02:00
Evan Czaplicki
a98a7be9f8
Export ADT constructors too
2013-07-29 23:43:57 +02:00
Evan Czaplicki
2d4afca06f
Fix JS generation
...
correct generation of binops
use correct calling conventions for defining functions
only import modules by name since everything is canonical (no more
eval!)
simplify exports
have _op be a per module object (resolves "overwriting" problem)
2013-07-29 23:22:33 +02:00
Evan Czaplicki
2f6d3227e9
If no exports are listed, everything gets exported
2013-07-29 23:19:32 +02:00
Evan Czaplicki
66515259cf
Only deprime when generating JavaScript, better to preserve information
2013-07-29 23:19:16 +02:00
Evan Czaplicki
f8fe8e4495
Properly convert Type.Type to SourceSyntax.Type
2013-07-29 20:23:42 +02:00
Evan Czaplicki
ac450ae944
restrict exports to def
and term
2013-07-29 19:49:09 +02:00
Evan Czaplicki
ec24738e9c
Get rid of dead code
2013-07-29 19:25:58 +02:00
Evan Czaplicki
fda1d2f979
Add canonicalization for aliases and ADTs
2013-07-29 19:25:24 +02:00
Evan Czaplicki
6ace8a0bf7
Move the definition of the Signal type out of the compiler and into the Signal library
2013-07-29 15:47:48 +02:00
Evan Czaplicki
0f3910d59e
Make SortDefinitions aware of ADT constructors, gave incorrect sorts before
2013-07-29 15:29:23 +02:00
Evan Czaplicki
46cb850570
Whitespace cleanup
2013-07-29 13:23:14 +02:00
Evan Czaplicki
3f96acf1f1
Get rid of logging and add Int, Float, Char, Bool to the global environment
2013-07-29 13:23:02 +02:00
Evan Czaplicki
2f49151c29
Cosmetic changes
2013-07-29 13:22:23 +02:00
Evan Czaplicki
ab00bce769
Remove SourceSyntax.Rename
...
I think keeping this file up to date is unnecessary
2013-07-29 13:21:59 +02:00
Evan Czaplicki
f8182740bc
Prettify code to print program
2013-07-29 13:21:34 +02:00
Evan Czaplicki
2f5639c4fb
Introduce Transform.Canonicalize
...
Run this to create a properly formatted ModuleInterface
2013-07-29 11:59:55 +02:00
Evan Czaplicki
02ab90e794
No need to derename, names will be preserved
2013-07-29 11:55:17 +02:00
Evan Czaplicki
1418bde44d
Remove use of SourceSyntax.Rename, which no longer exists
2013-07-29 11:54:50 +02:00
Evan Czaplicki
e22c7d455e
Add types and deprime
function to SourceSyntax.Helpers
2013-07-29 11:54:33 +02:00
Evan Czaplicki
eb96d7ad8d
Get rid of current canonicalization code
2013-07-29 11:53:45 +02:00
Evan Czaplicki
e8ab1c28ae
Remove SourceSyntax.Rename, which was unused
2013-07-29 11:52:34 +02:00
Evan Czaplicki
fa132ea6a8
Change name of Prelude to Basic, matching change in libraries/
2013-07-28 02:35:52 +02:00
Evan Czaplicki
0a6bd8bd96
Generate and use interfaces.data so standard library types are available
2013-07-28 02:24:17 +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
272557d785
Fix for "trying to write to a file in a non-existant directory"
2013-07-27 00:39:40 +02:00
Evan Czaplicki
fd63aff70b
Correct the code that unifies records
2013-07-27 00:15:26 +02:00