evancz
0d96f82208
Add type constructor for extensible records.
2013-06-07 10:16:38 -07:00
evancz
6e56df59a5
Switch to only generating elmo files. Turn off the CPP flags in .cabal and remove all generated JS files on each build for now.
2013-06-07 09:38:29 -07:00
evancz
28db384691
Fix parsing bug in as
patterns that would fully commit if any spaces were seen.
...
Also add `as` variables to reported variables in patterns.
2013-06-06 23:16:46 -07:00
evancz
989d878ac5
Merge branch 'master' into dev
...
Conflicts:
compiler/Model/Ast.hs
compiler/Types/Constrain.hs
2013-06-06 22:36:14 -07:00
evancz
ba5cd880d4
Merge branch 'master' of https://github.com/evancz/Elm
2013-06-06 22:30:07 -07:00
evancz
951df07b79
Only produce elmo files. The aim is to use a layout for object files similar to Go, which has thought very hard about how to make compilation really fast.
2013-06-06 22:28:24 -07:00
evancz
ad0f1f1fed
Switch from sets of constraints to lists of constraints. This should have a positive performance impact, in that list insertion should be asymptotically faster than set insertion.
2013-06-06 21:36:18 -07:00
Andrew Miller
f8547cf4be
Update 'at patterns' to use the as notation per mailing list discussion
2013-06-07 12:53:50 +12:00
evancz
1c80966ace
Change the Haskell API for compilation to make it easier to see error messages.
2013-06-06 16:11:23 -07:00
Andrew Miller
3c71ee1c4d
Support @ patterns as in Haskell
2013-06-06 21:27:20 +12:00
evancz
44fecefde6
Merge branch 'master' of https://github.com/evancz/Elm
2013-06-05 14:22:51 -07:00
evancz
212d19c3e8
Start using the given output-directory
2013-06-05 14:22:30 -07:00
evancz
f5bdb2ca7e
Minor code changes to help allow custom infix precedence and associativity.
2013-06-05 14:22:11 -07:00
evancz
2d1e06b17b
Start generating elmi and elmo files to permit sharing of types, values, and infix info between modules.
2013-06-05 00:44:04 -07:00
Andrew Miller
6a34482849
Add support for type annotations in let
2013-06-03 19:44:45 +12:00
evancz
6b28feaa2b
Switch name of Context to Located. Whoo static types :)
2013-05-29 16:20:38 -07:00
evancz
b4bf8e9810
Get rid of ($)
...
...
http://www.youtube.com/watch?v=a1Y73sPHKxw
2013-05-28 17:03:48 -07:00
evancz
e086c17e07
Resolve types for values imported from the standard library.
...
Still missing is ADT constructors in pattern matches and values from user defined modules.
2013-05-28 15:59:22 -07:00
evancz
89efcef64e
Merge branch 'master' of https://github.com/evancz/Elm into type-checker-improvements
2013-05-28 14:08:31 -07:00
evancz
22042e2967
Fix issue 162: Let expressions would re-order its members such that functions always came after values. This meant that you could not use the functions to define any values within a let.
2013-05-28 07:06:14 -07:00
evancz
8ae1d112dc
Turn on warning for undefined values.
2013-05-28 06:48:25 -07:00
evancz
3a369463ef
Simplify code for moduleName
function.
2013-05-28 06:47:57 -07:00
evancz
ce6467266f
Clean up imports in many files.
2013-05-28 06:47:36 -07:00
evancz
d292236b2e
Parse out types from ADT constructors.
...
Should help with type-checking things like the Json library.
2013-05-24 10:47:15 +02:00
evancz
f49b8ba1d2
Correct the list of the acceptable JSTypes.
2013-05-23 12:45:31 +02:00
evancz
0f76e1643c
Actually show error message for bad FFI imports and exports.
2013-05-22 16:08:05 +02:00
evancz
868e71e58b
Add JSObject to the FFI parser.
2013-05-22 15:59:47 +02:00
evancz
35fe7d6936
Fix missing var
problem.
2013-05-21 23:47:15 +02:00
evancz
5f1e3bd696
Switch back to putting let and case expressions in closures.
...
In the former case it is actually necessary, in the latter, it partially fixes a mysterious bug with Dict.diff.
Also stop using the LetBoundVars module.
2013-05-21 22:28:18 +02:00
evancz
ce51a0e39f
Add type-class for lists in LetBoundVars.hs
2013-05-21 22:11:23 +02:00
evancz
4eb973a206
Update Optimize.hs to use some of the newer infix operators.
2013-05-21 22:09:08 +02:00
evancz
1f1187cc74
Add open
keyword to import everything. Default is now to just import the module, not to open it into local scope.
2013-05-21 10:02:59 +02:00
evancz
94bb5e5a31
Change the type of FieldState
slightly. Now uses selectionStart
and selectionEnd
instead of the more ambiguous start
and end
.
...
Also add tons of documentation to `Graphics.Input`.
Also add the `emptyFieldState` value.
2013-05-20 15:35:44 +02:00
evancz
ee91bd91fc
Allow elm-doc to handle type aliases and ADTs.
2013-05-17 12:50:01 +02:00
evancz
6c0dc8e621
Make sure elm-doc
actually parses out the comments.
2013-05-16 22:11:40 +02:00
evancz
4bb23bc904
Merge branch 'dev' of https://github.com/evancz/Elm into dev
2013-05-14 16:30:36 +02:00
evancz
7ce550901c
Move to initializing with three different functions: fullscreen, node, and worker.
...
Add code to ensure that mouse and touch positions are reported relative to the embedded Elm node.
Remove the elm_ prefix from the events for logging, redirects, and title changes. Should be silo'd by the `elm` and not escape into the global event namespace.
2013-05-14 16:29:06 +02:00
Colin Curtin
88154c04ce
Fix showing compilation errors in the browser
...
* "Elm." is already prepended by https://github.com/evancz/Elm/blob/dev/compiler/Gen/GenerateHtml.hs#L74
2013-05-11 13:29:55 -07:00
evancz
3f8ce38f81
Rename some stuff in Graphics.Input
2013-05-06 02:30:11 -07:00
evancz
2ae0e90735
Add LineStyle to type aliases and add some annotations to the collage library
2013-05-05 12:11:45 -07:00
evancz
6b8fadac5f
Fix type errors and naming mistake
2013-05-05 00:40:45 -07:00
evancz
5b3e7e15e3
Add KeyCode
alias.
2013-05-04 19:01:42 -07:00
evancz
ef1275e5a1
Add Touch
and TextState
aliases.
2013-05-04 18:58:10 -07:00
evancz
b359fd0b47
Revise elm-docs to copy the names of type variables in type annotations directly.
2013-05-04 18:19:54 -07:00
evancz
6ca373bdeb
Move Geometry into Collage. Get rid of Graphics prefix as appropriate.
2013-04-28 20:57:48 -07:00
evancz
dab4b7c7b8
Switch from ($) to (|>) and (<|).
2013-04-24 22:26:01 -07:00
evancz
ac67dbd87f
Take out the F# inspired composition operators. I think this needs to wait until type-classes / monads / arrows are more figured out.
2013-04-22 10:24:37 -07:00
evancz
00d3ad2db6
Shorten Libraries.hs, and fix some types in some of the libraries.
2013-04-22 02:36:11 -07:00
evancz
29384b771a
Add some operators from F#: |>, <|, <<, and >>
2013-04-21 13:59:12 -07:00
evancz
530bc6e2b9
Fix how types are converted to strings. This actually fixes some bugs that come from generating docs.json, which led to incorrect types being used in the compiler.
2013-04-09 22:12:31 -07:00