Evan Czaplicki
6768b0ef7a
Get rid of dependency on Text.Read.readMaybe
to resolve #382
2013-12-11 18:57:56 -08:00
Evan Czaplicki
4452e4e138
Turn off markdown interpolation for now.
...
This will of course get turned back on! I don’t want to do it in the
very next release though.
2013-12-10 23:04:27 -08:00
Evan Czaplicki
e32eab0e62
Merge branch 'master' into dev
...
Conflicts:
compiler/Generate/JavaScript.hs
compiler/Generate/Noscript.hs
compiler/Parse/Expression.hs
compiler/SourceSyntax/Expression.hs
2013-11-22 12:22:29 -08:00
Evan Czaplicki
c8643484be
Abstract out the code for markdown parsing, making it easier to switch out the implementation
2013-11-22 12:12:22 -08:00
Evan Czaplicki
07187bd811
Better error when bad backslashing is used in strings
2013-11-11 15:40:51 +01:00
Evan Czaplicki
90e007730d
introduce the padded
function to use fewer whitespace
markers
2013-11-02 19:21:26 +01:00
Evan Czaplicki
56ecbbc70a
Implement markdown interpolation
2013-10-25 17:36:30 +02:00
Evan Czaplicki
c685c8b91b
cosmetic changes on fix for #305
...
I felt weird about the previous style where things were more
intermingled. Does everything still look okay?
2013-10-19 22:14:34 -04:00
John P Mayer Jr
e75f5388fb
can have zero fields if no extension could be parsed
2013-10-20 01:28:52 +00:00
Evan Czaplicki
5ad0ec5b7a
Parse documentation and infix declarations more safely
2013-10-17 13:40:28 -04:00
Evan Czaplicki
03cf56d8ec
cosmetic: make it simpler to get locations for parses
2013-10-14 22:38:38 -04:00
Evan Czaplicki
11a60de544
Disallow extended record types with no fields, resolves #280
2013-10-14 17:42:26 -04:00
Evan Czaplicki
115b139774
fix #279
2013-10-14 16:59:37 -04:00
Evan Czaplicki
958fb1c896
Treat strings like any other pattern literal
2013-10-02 16:55:46 -07:00
Evan Czaplicki
c2eecc2084
Properly parse all user-defined infix declarations
2013-09-15 14:39:56 -07:00
Evan Czaplicki
11f5f5263c
Actually use infixes in parser
2013-09-15 14:39:55 -07:00
Evan Czaplicki
fb64557f75
Switch format of OpTables, and add iParse that takes a table
2013-09-15 14:39:55 -07:00
Evan Czaplicki
a7bb2b7ac3
Fix issue in which type expressions eat trailing whitespace.
2013-09-06 12:22:01 -07:00
Evan Czaplicki
eb2a032e54
Remove unused import
2013-09-05 16:55:24 -07:00
Evan Czaplicki
8a913451c7
Add more helper functions
...
Ensure that comment parsers return the full body.
Add functions for skipping over characters.
Add function to extract the corresponding source text of a parse.
2013-09-04 17:17:48 -07:00
Evan Czaplicki
fecc96dde7
Rename some functions and export typeAnnotation
2013-09-04 17:16:35 -07:00
Evan Czaplicki
24642c85e6
Change default associativity to left
2013-09-04 17:16:07 -07:00
Evan Czaplicki
16a215a249
Show sign on interpolation if there is a failure
2013-09-02 15:18:20 -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
3a072982ac
Get generation working
...
move `makeSafe` over and make floats work
2013-08-31 13:22:00 -07:00
Evan Czaplicki
4e8898bef1
Remove unused references to Unique
2013-08-31 02:59:43 -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
1a093ac53a
Properly turn off custom OpTables
...
oops!
2013-08-29 02:57:01 -07:00
Evan Czaplicki
65dcc0b57e
Turn off custom OpTables for now
2013-08-29 02:55:49 -07:00
Evan Czaplicki
d7c89ee07c
support cross-module OpTables
2013-08-29 02:53:20 -07:00
Evan Czaplicki
f1a88975d2
Add iParse that takes a table
2013-08-29 00:55:32 -07:00
Evan Czaplicki
6d27c5eee7
Move OpTable into IParser user state
2013-08-29 00:54:54 -07:00
Evan Czaplicki
7785eb8e48
Remove dead code
2013-08-25 19:24:45 -07:00
Evan Czaplicki
d3dc74325d
Remove dead code
2013-08-25 19:23:45 -07:00
Evan Czaplicki
082e6a20c0
Throw proper parse errors, stop using error
2013-08-25 19:22:41 -07:00
Evan Czaplicki
40ea6df24b
Make sure that generated JS does not use JS's reserved words as variables
2013-08-24 15:00:23 -07:00
Evan Czaplicki
5fd85cd9c5
Permit single line comments intermingled with types
2013-08-15 23:29:29 -07:00
Evan Czaplicki
9ec51f558d
deprime on parsing, not on JS generation
2013-08-14 00:42:26 -07:00
Evan Czaplicki
d9918e0ac2
Convince parser to commit to lists, records, and tuples
2013-08-13 23:41:44 -07:00
Evan Czaplicki
61b5d8fbfa
Nicer messages on specific parse failures
2013-08-13 23:11:23 -07:00
Evan Czaplicki
ab83c78d8d
Remove dead code
2013-08-13 23:09:46 -07:00
Evan Czaplicki
cd84e06695
Make pattern exhaustive, giving parse error when someone uses binops with different associativity
2013-08-13 22:20:00 -07:00
Evan Czaplicki
9821e12a4c
Strip \r from multiline strings
2013-08-07 09:12:53 -07:00
Evan Czaplicki
ed6b255ba5
Properly parse out module names, defaulting to Main if no name is given.
2013-08-06 21:20:08 -07:00
Evan Czaplicki
9f2b81e4a9
Unhide thing that does not exist
2013-08-02 16:09:06 -07:00
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
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