Evan Czaplicki
078692ad8c
Get Optimize.hs updated for the newer AST.
2013-07-07 12:55:08 +02:00
Evan Czaplicki
5c68f6bb73
Convert more files to the new Expression format that relies more on
...
patterns. Seems to clean things up so far.
Also, begin adding a module that resorts definitions to make sure
that each definition comes after the ones it depends on. This will
also make it possible to disallow recursive values statically.
2013-07-04 17:24:04 +02:00
Evan Czaplicki
74d3c35131
Fix optimization bug with > sign.
2013-07-02 16:58:19 +02:00
Evan Czaplicki
d700acfeac
Fix substitutions for ExplicitList.
2013-07-01 20:00:37 +02:00
Evan Czaplicki
98eceb5496
Clean up Transform/Replace.hs. Switch the environment from a (String -> String) to a (Map String String).
2013-06-23 01:33:33 -07:00
evancz
9a40249e05
Fix the confusion with "Cons" and "Nil" in issue #176 .
...
Also add the ExplicitList expression.
2013-06-20 21:25:10 -07:00
evancz
721ce4f192
Continue reorganizing the code-base.
...
Remove uses of uniplate, introduces a regression in testing the ordering of Defs in let-expressions.
2013-06-13 22:45:08 -07:00
evancz
339ad77c46
Begin getting the parser to match the new SourceSyntax modules.
2013-06-13 18:35:37 -07:00
evancz
73317ed123
Switch to using MultiIf for all if expressions. Simplifies AST.
2013-06-13 16:01:35 -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
Andrew Miller
f8547cf4be
Update 'at patterns' to use the as notation per mailing list discussion
2013-06-07 12:53:50 +12:00
Andrew Miller
3c71ee1c4d
Support @ patterns as in Haskell
2013-06-06 21:27:20 +12: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
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
1d04b342d8
Permit pattern matching on records in case-expressions.
2013-04-07 06:46:46 -07:00
evancz
99ae5c6ba0
Finish moving the compiler down a directory.
2013-03-16 12:07:32 -07:00