Evan Czaplicki
ed4be06a6a
Update to match new port and decl format
2014-01-02 23:44:42 -08:00
Evan Czaplicki
98f7be328b
Make "combineAnnotations" a part of parsing a program
2014-01-02 23:42:54 -08:00
Evan Czaplicki
49fc0b6378
Create way to crawl over all lets in a program, transforming defs and ports
...
Used to combine type annotations with definitions and find ordering
problems with Definitions and Ports
2014-01-02 23:39:34 -08:00
Evan Czaplicki
3af5c2a652
Switch to new format for Expr, Def, and Module
2014-01-02 23:37:52 -08:00
Evan Czaplicki
e8389ac78a
Update to match new Module type
2014-01-02 23:23:26 -08:00
Evan Czaplicki
3c65b5c69d
Move boundVars
function into SourceSyntax.Pattern
2014-01-02 23:23:11 -08:00
Evan Czaplicki
e3b8ea7d09
Update basic parsers to use the new formats for Expr, Declaration, and Port
2014-01-02 23:20:25 -08:00
Evan Czaplicki
bd4d76ecae
Chenge representation of Expr, add ports representation
...
Get rid of the unused t and v type variables. Add the def type
variable, which models the fact that type annotations and definitions
start separate, but need to be combined before most stuff goes down.
Ports have the same structure as definitions in that annotations and
definitions are separate at the source level and need to be combined.
The same technique used in Expr is now used in Decl as well.
2014-01-02 23:18:42 -08:00
Evan Czaplicki
600e65ca43
Get rid of Transform.Optimize, which is currently unused
2014-01-02 23:13:37 -08:00
Evan Czaplicki
5c509f2f1e
Make Binary serialization code nicer
2014-01-02 17:42:27 -08:00
Justin Leitgeb
9d6f5377f8
Add basic Travis CI configuration
...
I added a basic Travis CI configuration to make the build status more
transparent. I added a small logo to the bottom of the README with the
status and a link to the build.
@evancz after merging this you'd have to go to https://travis-ci.org
and enable the build for this project, just takes a couple of clicks.
See http://about.travis-ci.org/docs/user/getting-started/ .
I tested this on my own github account and the configuration worked
(ie, it showed the same build errors on Travis that I'm experiencing
locally).
2014-01-02 18:10:11 -05:00
Evan Czaplicki
662fd7669a
Add JS as a possible Derivation, correct binary serialization, add error when serialization goes wrong.
2014-01-02 13:38:41 -08:00
Evan Czaplicki
578dfb8358
Merge branch 'js-integration' into dev
2014-01-02 12:29:08 -08:00
Evan Czaplicki
6dec2ae0fa
Merge branch 'master' into dev
2014-01-02 12:24:35 -08:00
Evan Czaplicki
60aaaf4d66
Try to clarify why the Hackage API exists.
2013-12-30 15:57:42 -08:00
Evan Czaplicki
013f9d701e
Bump version number of elm-server
2013-12-30 15:50:25 -08:00
Evan Czaplicki
82714cb552
Merge pull request #427 from maxsnew/server-compat
...
Update elm-server to work with new module structure
2013-12-30 15:35:44 -08:00
Timothy Vladimír Hobbs
145d4b96c5
Update elm-server to work with new module structure
2013-12-30 17:31:43 -06:00
Max New
cf9d21b0c8
Recompile modules when their dependencies have changed.
2013-12-30 16:09:41 -06:00
Max New
6511fc0e97
Refactor Build.File using monad transformers
2013-12-30 16:09:41 -06:00
Evan Czaplicki
b0a856eb5f
Merge pull request #421 from maxsnew/test
...
Test Re-org and Start Property Testing
2013-12-30 00:27:50 -08:00
Max New
dcac0e0d5c
Style tweaks and use cross-platform file name construction.
2013-12-30 02:19:02 -06:00
Max New
37f5d9e1ea
Make parse/print test more stringent, tweak Float gen.
2013-12-29 22:11:19 -06:00
Max New
d003062586
Pattern pretty printer prints syntactically correct code.
...
Include auto-generated test case that was previously broken.
2013-12-29 20:46:20 -06:00
Max New
24751a3d85
Add parse/print tests for Patterns.
2013-12-29 20:18:45 -06:00
Evan Czaplicki
56324bf699
Update version numbers for standard library
2013-12-29 15:35:26 -08:00
Max New
2da9009512
Setup QuickCheck and add Literal Parse/Print test
...
Currently fails the prop tests: https://github.com/evancz/Elm/issues/420
Also ignore emacs backup files.
2013-12-29 16:50:41 -06:00
Evan Czaplicki
5b7f442584
Bump version number
2013-12-29 13:41:39 -08:00
Evan Czaplicki
9dfcb507db
Merge branch 'dev'
2013-12-29 13:23:17 -08:00
Evan Czaplicki
e34245ae3a
Cosmetic: add a space
2013-12-29 13:22:54 -08:00
Max New
1408d928d5
Re-org tests
2013-12-29 15:17:49 -06:00
Max New
840eca6573
Migrate tests to test-framework and make them more specific.
...
Use test-framework as it's more widely used/has better support for
HUnit/QuickCheck.
Make test cases test the `compile` function explicitly instead of the
elm executable as that's all they're actually intended to test.
2013-12-29 13:44:25 -06:00
Evan Czaplicki
f26610b718
Properly handle pattern matching on non-tuple ADTs in let-expressions, esolving issue #417
2013-12-27 16:14:21 -08:00
Evan Czaplicki
a5b486c56d
Use the github sanctioned name for this file, based on new facts from @devth
2013-12-24 10:27:45 -08:00
Evan Czaplicki
4e23dc6a08
Mess with documentation for empty
2013-12-24 10:16:17 -08:00
Evan Czaplicki
71bb1c8bf9
Add basics of properly handling ports
2013-12-24 10:13:19 -08:00
Evan Czaplicki
6db931849d
Merge pull request #404 from maxsnew/empty
...
Add empty element
2013-12-24 10:11:26 -08:00
Evan Czaplicki
740702c0d7
Begin switch from current FFI syntax to "port" syntax
2013-12-23 23:53:54 -08:00
Evan Czaplicki
fcbd7fd73b
Improve some parser code by adding type annotations, removing unused dependencies, and using prefixed imports
2013-12-23 23:26:03 -08:00
Evan Czaplicki
0486c90bd3
Merge branch 'dev' into deriving
2013-12-23 17:03:05 -08:00
Evan Czaplicki
51ee065e6b
Cosmetic: give function a more descriptive name
2013-12-23 17:02:47 -08:00
Evan Czaplicki
230c695231
Merge pull request #412 from maxsnew/otherwise
...
Expand `else` to `True` instead of `otherwise`.
2013-12-23 17:00:58 -08:00
Max New
647cf279a1
Optimize True branch in multi-way if code generation.
2013-12-23 18:57:23 -06: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
Max New
254d71f4e5
Expand else
to True
instead of otherwise
.
...
Makes `if` syntax independent of the value of `otherwise`.
Includes test case.
2013-12-23 18:31:55 -06:00
Evan Czaplicki
32c78efe7d
Begin process of allowing "deriving" on type aliases.
2013-12-23 14:42:43 -08:00
Evan Czaplicki
171f199db3
Merge branch 'dev' into json
2013-12-23 13:01:21 -08:00
Evan Czaplicki
e119d8ef62
Get rid of SourceSyntax.Everything module
2013-12-22 15:18:16 -08:00
Evan Czaplicki
f8bf89b48d
Make sure that all names in a program are safe for use in JS code
2013-12-22 15:00:29 -08:00
Evan Czaplicki
e690c427b7
Add deriving as a reserved word
2013-12-21 23:55:33 -08:00