Evan Czaplicki
2a0a0e6e3c
Simplify SourceSyntax.Type AST, making record extension more restrictive as discussed with @maxsnew
2014-01-13 11:01:10 +01:00
Evan Czaplicki
9dda928ac4
make conversion functions for input ports optional
2014-01-13 11:01:10 +01:00
Evan Czaplicki
96f55fceab
Take ports out of MetadataModule, where it is no longer needed
2014-01-06 08:06:56 +01:00
Evan Czaplicki
7cf5a564e5
Add Expressions for ports to check and validate types nicely
2014-01-04 11:39:38 +01:00
Evan Czaplicki
9ccc707594
properly rename expressions in port declarations, add -Wall
2014-01-04 08:20:52 +01:00
Evan Czaplicki
3d780425fb
Update for ports and defs, switch to using <$> and <*> a lot
2014-01-02 23:48:42 -08:00
Evan Czaplicki
740702c0d7
Begin switch from current FFI syntax to "port" syntax
2013-12-23 23:53:54 -08:00
Evan Czaplicki
83e8bad84f
Add basics of "deriving" for ADTs and type aliases. Only parse it for type aliases at the moment.
2013-12-23 16:51:15 -08:00
Justin Leitgeb
c845e586ed
Give more helpful error messages when deserializing elmi files
...
Provides an error message indicating incorrect compiler version or corrupt file.
Exit status will be 1 in either failure case and error message is printed to
stderr. Uses the same checks against interfaces.data as well as standard .elmi
files since both are susceptible to breaking in the same way.
The following will be displayed when an elmi file has a different compiler
version than the elm compiler that tries to load it:
justin ~/Code/elm-lang.org/public/examples/Intermediate $ ~/Code/elm/dist/build/elm/elm Pong.elm
Found build artifacts created by a different Elm compiler version. Please rebuilt cache/Pong.elmi and try again.
The following will be displayed when a file that cannot be deserialized is
encountered:
justin ~/Code/elm-lang.org/public/examples/Intermediate $ ~/Code/elm/dist/build/elm/elm Pong.elm
Got an error, 'demandInput: not enough bytes' at offset 10303 of cache/Pong.elmi.
This error may be due to an outdated or corrupt artifact from a previous build. Please rebuild cache/Pong.elmi and try again.
2013-11-03 20:35:10 -05:00
Evan Czaplicki
d97fe192e0
Merge branch 'markdown' into dev
...
Conflicts:
Elm.cabal
2013-10-29 15:36:56 +01: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
56ecbbc70a
Implement markdown interpolation
2013-10-25 17:36:30 +02:00
Evan Czaplicki
76b2e56981
Add Strings as a primitive in the compiler
2013-10-02 15:56:43 -07:00
Evan Czaplicki
11f5f5263c
Actually use infixes in parser
2013-09-15 14:39:55 -07:00
Evan Czaplicki
37f1be6d79
Add fixities to module interfaces
2013-09-15 14:39:55 -07:00
Evan Czaplicki
5f7fcaa92d
Fix issue #241
2013-09-08 12:26:07 -07:00
Evan Czaplicki
aed6d9547a
Merge branch 'experimental' into dev
...
Conflicts:
compiler/Generate/JavaScript.hs
2013-09-01 01:43:51 -07:00
Evan Czaplicki
6ba2d70365
Revert 95ec3a8..1a093ac
...
This rolls back to commit 95ec3a822e
.
2013-08-29 16:43:54 -07:00
Evan Czaplicki
7c159b294a
Enable parsing of basic markdown interpolation
...
No interpolated values are actually used, but they are type checked.
2013-08-29 13:00:38 -07:00
Evan Czaplicki
d7c89ee07c
support cross-module OpTables
2013-08-29 02:53:20 -07:00
Evan Czaplicki
fea6e5d408
Add fixities to module interfaces
2013-08-29 00:06:37 -07:00
Evan Czaplicki
9e58bdbc54
Canonicalize patterns in lambda expressions
2013-08-10 15:48:18 -07:00
Evan Czaplicki
0b9317124d
Give more specific errors when a variable cannot be found during canonicalization
2013-08-07 09:38:30 -07:00
Evan Czaplicki
a56efd851b
Check that imports actually exist in the known interfaces
2013-07-31 12:12:30 -07:00
Evan Czaplicki
b26edcc46e
Simplify representation of source locations
2013-07-30 11:43:42 -07:00
Evan Czaplicki
fda1d2f979
Add canonicalization for aliases and ADTs
2013-07-29 19:25:24 +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
2f5639c4fb
Introduce Transform.Canonicalize
...
Run this to create a properly formatted ModuleInterface
2013-07-29 11:59:55 +02:00