Patrick Thomson
b7829dcde9
Fix GCompileSum instances.
2019-10-02 10:18:39 -04:00
Patrick Thomson
e8e67161e0
Compile now has kind (Type -> Type) -> Constraint.
2019-10-02 09:57:17 -04:00
Rob Rix
ad3a810e17
Merge branch 'master' into semantic-tags
2019-09-30 13:52:14 -04:00
Patrick Thomson
b58e10313d
Use the technical term.
2019-09-30 12:39:45 -04:00
Patrick Thomson
0671bffef3
More Haddocks.
2019-09-30 12:36:53 -04:00
Patrick Thomson
b3b1c8d016
Typo in comment.
2019-09-30 12:35:38 -04:00
Patrick Thomson
696d2fc786
Make desugar tail-recur (and we don't need a Stack).
2019-09-30 12:32:28 -04:00
Patrick Thomson
f7c4658ee6
Use a Stack so we can do a right fold over the assignments.
2019-09-30 12:18:06 -04:00
Patrick Thomson
af429a5933
Consolidate fmaps.
2019-09-28 09:44:55 -04:00
Patrick Thomson
de2c762d2c
Typo in comment.
2019-09-27 18:18:00 -04:00
Patrick Thomson
8e6a1395c0
w h i t e s p a c e
2019-09-27 18:16:42 -04:00
Patrick Thomson
a51151afb5
Make sure chained assignments don't lose their location info.
2019-09-27 18:11:36 -04:00
Patrick Thomson
794265d3a9
Even more comments.
2019-09-27 17:56:19 -04:00
Patrick Thomson
54bc5c7505
Move desugar into a monad.
2019-09-27 17:38:50 -04:00
Patrick Thomson
825726d37e
Add a lot of comments and some clarifying patterns.
2019-09-27 17:36:08 -04:00
Patrick Thomson
b1611e13e8
Initial stab at folding over multiple assignments.
2019-09-27 17:35:51 -04:00
Rob Rix
379b9d4f75
Fix the tests.
2019-09-27 15:15:37 -04:00
Rob Rix
bd73cd0e1d
Bump to the latest tree-sitter* packages.
2019-09-27 14:02:49 -04:00
Patrick Thomson
18a1a0d8b7
Avoid 'head', which is partial.
2019-09-24 00:57:22 -04:00
Patrick Thomson
1731df8bd8
Stray import.
2019-09-23 22:16:25 -04:00
Patrick Thomson
3926742c1d
Improve parsing of FileCheck-style tags.
...
This used to operate via some fast-and-loose (ab)use of the Trifecta
API. A simpler way to do things is to use streaming-bytestring to load
a file line by line and parse directives until we encounter program text.
2019-09-23 22:00:44 -04:00
Patrick Thomson
6dcbe96a0c
Fix warnings in Language.Python.Core.
2019-09-23 19:59:23 -04:00
Patrick Thomson
1990e2379b
Merge remote-tracking branch 'origin/master' into remove-regular-compile
2019-09-23 19:56:08 -04:00
Patrick Thomson
a2e1ced785
Reinsert a FIXME.
2019-09-23 19:42:17 -04:00
Patrick Thomson
e98e483c13
Define Compile interface in terms of compileCC.
2019-09-23 13:30:23 -04:00
Patrick Thomson
a556e1d9ff
fix typo
2019-09-23 13:02:50 -04:00
Patrick Thomson
0d994ca28a
Less-specious implementation of ExpressionList compilation.
2019-09-23 12:48:58 -04:00
Patrick Thomson
19a1fa9cfc
More cleanup.
2019-09-23 12:42:08 -04:00
Patrick Thomson
e7f84566b6
Add viaCompileCC helper.
2019-09-23 12:37:21 -04:00
Patrick Thomson
46c7d45865
Cleanup.
2019-09-23 12:33:45 -04:00
Patrick Thomson
54b5d379ea
Fix Compile instance for ExpressionStatement and Assignment.
2019-09-23 12:31:25 -04:00
Patrick Thomson
dccc1942aa
Break toplevel assignment case because it's wrong.
2019-09-23 12:13:40 -04:00
Patrick Thomson
375c975338
Use compileCC to build a record of toplevel bindings.
2019-09-23 11:56:40 -04:00
Patrick Thomson
4174fce11c
Add Bindings type and reader effect.
2019-09-23 11:06:10 -04:00
Patrick Thomson
611877ad00
An infix fmap is cleaner here.
2019-09-19 15:35:25 -04:00
Patrick Thomson
2c24ee2539
Omit otiose default signature.
2019-09-19 15:35:08 -04:00
Patrick Thomson
a89cd0dad9
Eliminate inefficient RelPath->String->Text conversion.
2019-09-19 15:31:04 -04:00
Patrick Thomson
aaa73b20f2
Merge branch 'master' into provide-path-info
2019-09-19 08:22:04 -04:00
Patrick Thomson
d9f88fc046
Add a CHECK-TREE directive and simplify esoteric jq tests.
...
Due to the problems outlined in #245 , the tests for return statements
were complicated and not testing useful properties. This patch adds a
new `CHECK-TREE` directive which lets you embed a Core expression
as a string, which is parsed and then compared against the result of
compiling the containing module.
2019-09-18 18:07:43 -04:00
Patrick Thomson
8dc4db0e21
No more filepath dependency.
2019-09-18 15:03:16 -04:00
Patrick Thomson
b94b3448c4
Ensure filename information is yielded in locate
.
2019-09-18 14:51:06 -04:00
Patrick Thomson
328d1ac251
Everyone gets to depend on text.
2019-09-18 14:50:28 -04:00
Patrick Thomson
0dc0a534c6
Start using typed paths in tests.
2019-09-18 14:41:58 -04:00
Patrick Thomson
483494ccfd
Remember to call locate
on False.
2019-09-18 13:52:00 -04:00
Patrick Thomson
fc98de9e4d
Change wording of justification for CoreSyntax type.
2019-09-18 13:51:45 -04:00
Patrick Thomson
da5bb84b05
Remove tree-sitter dependency from semantic-core.
2019-09-18 13:49:04 -04:00
Patrick Thomson
2aea021890
Use some tree information in a unit test.
2019-09-18 13:05:10 -04:00
Patrick Thomson
99a7806c20
Fix tests.
2019-09-18 12:35:54 -04:00
Patrick Thomson
0dafd1ef7f
Make syntax instances preserve their location.
2019-09-18 12:35:34 -04:00
Patrick Thomson
b460c6e452
Add 'locate'.
2019-09-18 12:35:21 -04:00