Patrick Thomson
96771f8ebf
fix tests
2018-06-04 18:53:24 -04:00
Patrick Thomson
4a7ebf71dd
Merge remote-tracking branch 'origin/master' into fix-maybe-language
2018-06-04 18:33:03 -04:00
Patrick Thomson
10a863f57c
Fix tests
2018-06-04 18:26:47 -04:00
Rick Winfrey
d5a7c04254
Merge branch 'master' of https://github.com/github/semantic into haskell-assignment
2018-06-04 15:01:25 -07:00
Timothy Clem
bfe7caed48
Merge branch 'master' into java-assignment-part-2
2018-06-04 14:34:22 -07:00
Patrick Thomson
dd4a939f21
merge fallout
2018-06-04 12:18:02 -04:00
Patrick Thomson
7c9b1ec17e
Merge remote-tracking branch 'origin/master' into text-names
2018-06-04 11:46:54 -04:00
Patrick Thomson
cf6133ebfc
change fromBytes to fromUTF8
2018-06-04 10:18:32 -04:00
Rick Winfrey
b0fb50e21a
Assign contexts with classes
2018-06-01 16:36:34 -07:00
Rick Winfrey
4f34d71651
Assign datatype declarations with deriving clauses
2018-06-01 16:36:07 -07:00
Timothy Clem
43fa49b09f
Merge remote-tracking branch 'origin/master' into explicit-statements
2018-06-01 14:52:51 -07:00
Rob Rix
d6d3008cba
deref operates on the address, so drop the env.
2018-06-01 17:28:35 -04:00
Rob Rix
d8201341c9
We’re already destructuring the tuples.
2018-06-01 17:28:19 -04:00
Charlie Somerville
435a211fc4
Merge branch 'master' into charliesome/value-ref-address
2018-06-01 14:20:07 -07:00
Ayman Nadeem
e9b5bdf7da
text fixtures
2018-06-01 14:09:56 -07:00
Ayman Nadeem
465dd0fcb4
move test fixtures to newly created corpus directory
2018-06-01 13:41:12 -07:00
Charlie Somerville
7478c4a6de
Merge branch 'master' into charliesome/value-ref-address
2018-06-01 12:50:11 -07:00
Ayman Nadeem
3613373a8a
Merge branch 'master' into java-assignment
2018-06-01 11:52:56 -07:00
Timothy Clem
a7cf91d669
Merge branch 'derive-ToJSONFields1' into explicit-statements
2018-06-01 11:47:45 -07:00
Timothy Clem
902156ae78
Merge remote-tracking branch 'origin/master' into derive-ToJSONFields1
2018-06-01 11:46:08 -07:00
Timothy Clem
359031d777
s/Program/Statements in all of the tests
2018-06-01 11:44:03 -07:00
Timothy Clem
2d626f9f90
Merge branch 'derive-ToJSONFields1' into explicit-statements
2018-06-01 11:22:04 -07:00
Ayman Nadeem
1808d53a3b
correct text fixtures according to and/or ruby bug fix
2018-06-01 11:16:00 -07:00
Rick Winfrey
057de6df34
Add aglebraic datatype tests
2018-06-01 10:56:12 -07:00
Timothy Clem
5408e20ea8
Merge remote-tracking branch 'origin/master' into explicit-statements
2018-06-01 08:54:55 -07:00
Charlie Somerville
32268b1710
Merge branch 'master' into charliesome/value-ref-address
2018-05-31 20:34:05 -05:00
Timothy Clem
a4e0ca6686
Fix tests and use fixtures that are easier to maintain
2018-05-31 17:20:51 -07:00
Ayman Nadeem
e030824d52
fix conflicts with new haskell additions
2018-05-31 15:32:10 -07:00
Timothy Clem
11c1ac39bb
Merge remote-tracking branch 'origin/master' into derive-ToJSONFields1
2018-05-31 10:59:07 -07:00
Timothy Clem
9baea34f5d
Generically derive ToJSONFields1 for basically everything
2018-05-31 10:56:04 -07:00
Charlie Somerville
3c38b5fa46
Merge branch 'master' into charliesome/value-ref-address
2018-05-31 11:54:44 -05:00
Rick Winfrey
9016553aaa
Merge branch 'master' into haskell-assignment
2018-05-31 11:22:45 -05:00
Timothy Clem
d05225fe61
Test fixes
2018-05-31 08:44:44 -07:00
Patrick Thomson
c4897c57c6
merge fallout
2018-05-31 00:05:32 -04:00
Patrick Thomson
d144087486
Merge remote-tracking branch 'origin/master' into text-names
2018-05-30 23:51:11 -04:00
Patrick Thomson
014b830db2
source => rawSource, tsource => source
2018-05-30 23:24:50 -04:00
Patrick Thomson
f541c42da8
Fix literals to store text internally.
2018-05-30 22:32:22 -04:00
Rick Winfrey
c49ce6d5a7
Merge branch 'master' into haskell-assignment
2018-05-30 19:21:11 -05:00
Rick Winfrey
cc3a215833
Update specialized constructors ([]
, (,)
, (->)
, ()
)
...
Also updates the `TuplingConstructor` to store its arity as Int
2018-05-30 17:17:05 -07:00
Rob Rix
6f9cfae147
Merge branch 'master' into env-effect
2018-05-30 18:57:52 -04:00
Patrick Thomson
7ba832d566
Fix tests.
2018-05-30 18:29:54 -04:00
Rob Rix
08cf65718f
Fix the evaluator spec.
2018-05-30 17:20:08 -04:00
Rob Rix
bcf9338b75
Update the language specs to respect the env-per-entry-point thing.
2018-05-30 17:19:05 -04:00
Rick Winfrey
b270130cc0
Merge branch 'master' into haskell-assignment
2018-05-30 12:33:37 -05:00
Rob Rix
f9c7f2836d
runEnv in the evaluator spec.
2018-05-30 13:03:50 -04:00
Timothy Clem
ddc4923e88
Fix tests
2018-05-30 09:53:01 -07:00
Timothy Clem
51394186f9
Merge remote-tracking branch 'origin/master' into enhanced-json-output
2018-05-30 07:50:29 -07:00
Rob Rix
6adc5d7413
Placate hlint some more.
2018-05-30 10:33:51 -04:00
Rob Rix
e9880781e5
Make sure we can load the Address module.
2018-05-30 09:51:08 -04:00
Rob Rix
f9b29f143e
And another.
2018-05-30 09:46:56 -04:00
Rob Rix
04b43477c9
🔥 a reference to Address in the spec.
2018-05-30 09:46:30 -04:00
Timothy Clem
2d08451d87
Call [] Statements
2018-05-29 14:25:31 -07:00
Charlie Somerville
b72b442e0c
WIP Merge branch 'master' into charliesome/value-ref-address
2018-05-29 16:06:45 -05:00
Rob Rix
8fc1ccaa19
Merge branch 'recursive-type-families-are-not-our-friends' into 🔥 -galign
2018-05-29 12:49:29 -04:00
Rob Rix
dda2f9897b
Merge branch 'master' into 🔥 -galign
2018-05-29 12:48:34 -04:00
Charlie Somerville
e0b4be74a9
Merge branch 'master' into charliesome/value-ref-address
2018-05-29 11:38:09 -05:00
Rob Rix
81032f34ec
Whoops.
2018-05-29 12:26:36 -04:00
Rob Rix
f5572e41ca
Use Member instead of Members everywhere!
2018-05-29 12:09:09 -04:00
Timothy Clem
2134f04ffe
Merge branch 'master' into haskell-assignment
2018-05-29 08:34:52 -07:00
Rob Rix
54150552b3
Merge branch 'master' into 🔥 -galign
2018-05-29 08:53:37 -04:00
Rob Rix
6b780d297d
Revert "These are probably integers."
...
This reverts commit d2a74b2a4ca1472976abfccc09601c60840c1761.
2018-05-28 16:06:25 -04:00
Rob Rix
0f3c7df8d1
These are probably integers.
2018-05-28 16:05:03 -04:00
Rob Rix
038d3d07eb
Test the return values
2018-05-28 15:44:48 -04:00
Rob Rix
7b02e3e64f
Correct the EnvironmentError application.
2018-05-28 15:30:19 -04:00
Rob Rix
f0c220906a
Partially apply Eff in the tests.
2018-05-28 14:48:00 -04:00
Rob Rix
cc02cfd8eb
AbstractIntro is pure.
2018-05-28 14:47:42 -04:00
Rob Rix
89b90496b7
Don’t qualify this name.
2018-05-28 14:47:20 -04:00
Rob Rix
b3b47a34df
🔥 Goto.
2018-05-28 14:42:46 -04:00
Rob Rix
282c02fbbd
Embed the evaluating action into the closure body.
2018-05-28 14:11:08 -04:00
Rob Rix
a01e723b31
Run ValueErrors in TermEvaluator.
2018-05-28 09:55:01 -04:00
Rob Rix
015b74cf41
Give Value a term type parameter once more.
2018-05-28 09:35:42 -04:00
Rob Rix
a2135fda74
Don’t use overloaded lists.
2018-05-28 09:35:03 -04:00
Rob Rix
2993c3588c
Correct the specs.
2018-05-28 08:54:33 -04:00
Rick Winfrey
e74bfca4bd
Assign basic type synonym declarations
2018-05-25 01:57:20 -05:00
Rick Winfrey
ea18738a28
Assign string and array literals
2018-05-25 01:57:20 -05:00
Rick Winfrey
d86a41f17c
Assign character literals
2018-05-25 01:57:20 -05:00
Rob Rix
127ed8a26a
Merge branch 'master' into rearrange-value-ref-and-friends
2018-05-24 12:23:30 -04:00
Rob Rix
5ac256e340
🔨 fix the type in the spec
2018-05-24 12:09:20 -04:00
Rob Rix
eeb604569d
Merge branch 'master' into decompose-values
2018-05-24 09:11:19 -04:00
Rick Winfrey
3d70af57a4
Add blank file test fixture
2018-05-23 15:59:32 -07:00
Rick Winfrey
32619a8124
Add literal test fixtures
2018-05-23 15:55:26 -07:00
Charlie Somerville
71e389ef71
fix tests
2018-05-23 15:38:47 -07:00
Charlie Somerville
10022d4de9
push Address location value into the guts of the evaluator
2018-05-23 14:55:44 -07:00
Patrick Thomson
7da61bd4c9
Merge branch 'master' into strict-equals
2018-05-23 11:33:32 -04:00
Patrick Thomson
eaa54a3230
Add strict-equality function.
...
TypeScript, JavaScript, and PHP support an === operator, which
corresponds to strict equality (usually the equality you want). I've
added a constructor to Comparison that takes care of this. Actually
implementing non-strict equality for the above languages will have to
wait until we can build behavior a la carte.
I chose not to add Ruby's case-equality operator, though it uses ===,
since the behavior is so different. (For example, a === a is not
always true over Ruby's ===).
2018-05-23 11:28:31 -04:00
Rob Rix
115e887739
Merge branch 'master' into decompose-values
2018-05-23 09:59:16 -04:00
Patrick Thomson
f563a2c808
forgot a do
2018-05-22 17:25:17 -04:00
Patrick Thomson
c8d5a8d231
add test for cancelling in-flight parsers
2018-05-22 17:01:17 -04:00
Patrick Thomson
949b9be418
add spec
2018-05-22 16:53:03 -04:00
Rob Rix
2cb425dbb5
Merge branch 'master' into decompose-values
2018-05-22 15:43:51 -04:00
Rob Rix
fb5b903af7
Merge branch 'master' into decompose-values
2018-05-22 08:44:54 -04:00
joshvera
dd123a0181
Merge remote-tracking branch 'origin/master' into grpc-server
2018-05-21 13:55:15 -04:00
joshvera
378dad0d69
Merge remote-tracking branch 'origin/master' into grpc-server
2018-05-21 12:33:22 -04:00
Timothy Clem
42af0faae6
New approach for linting
2018-05-21 08:17:11 -07:00
Rob Rix
18b2cfc89f
Merge branch 'master' into decompose-values
2018-05-18 14:14:55 -04:00
Rob Rix
5504b0b673
Add doctests for the Show output.
2018-05-18 14:03:42 -04:00
Rob Rix
c45802a809
Reformat defaultFiles.
2018-05-18 13:20:56 -04:00
Rob Rix
109dbd3b44
Fix the typescript spec.
2018-05-18 13:07:37 -04:00
Rob Rix
2ba726cb28
Fix a dodgy import.
2018-05-18 13:06:49 -04:00
Rob Rix
75d83155ec
Re-export the Name module.
2018-05-18 13:06:35 -04:00
Rob Rix
81951d7bcc
Fix the Listable instance for Name.
2018-05-18 13:05:46 -04:00
Rob Rix
ca6b32378e
Merge branch 'master' into allocator-effect
2018-05-18 11:09:20 -04:00
Josh Vera
053a158e59
Merge branch 'master' into update-fastsum
2018-05-18 10:44:08 -04:00
Rob Rix
6f3698122c
Merge branch 'master' into allocator-effect
2018-05-17 16:47:24 -04:00
Rob Rix
ad3f63ad74
Merge branch 'allocator-effect' into decompose-values
2018-05-17 16:46:58 -04:00
Ayman Nadeem
8aad81b775
Merge branch 'master' into java-assignment
2018-05-17 10:42:00 -07:00
Timothy Clem
c2851c9d8a
Merge branch 'master' into package-dot-json-parsing
2018-05-17 08:02:29 -07:00
Timothy Clem
1cbccd5557
Merge branch 'master' into python-relative-imports
2018-05-17 07:55:33 -07:00
Rob Rix
e9238d0ec7
Merge branch 'master' into package-dot-json-parsing
2018-05-16 19:12:08 -04:00
Rob Rix
19bc0ab637
Merge branch 'master' into allocator-effect
2018-05-16 18:33:00 -04:00
Patrick Thomson
dafb3edaf5
Merge remote-tracking branch 'origin/master' into update-fastsum
2018-05-16 18:26:43 -04:00
Patrick Thomson
322f348103
inj -> inject
2018-05-16 18:25:02 -04:00
Rob Rix
101798fd39
Update a bunch of fixtures.
2018-05-16 16:38:40 -04:00
Rob Rix
06047bc31f
Unify them types.
2018-05-16 16:21:02 -04:00
Rob Rix
a918420726
diffWithParser needs a Hashable1 instance.
2018-05-16 16:19:18 -04:00
Rob Rix
02947bf61e
Fix the RWS spec.
2018-05-16 16:15:06 -04:00
Patrick Thomson
6b0198cb00
Remove otiose -Sum prefixes from all Data.Sum operations.
...
There are no modules where we use both Union.inj and Sum.injectSum; as
such, it seems clumsy for such ubiquitous functions as inj and prj to
have such long names when there is no ambiguity. This restores the
codebase to much how it looked before we switched back to a richer
Data.Union.
2018-05-16 15:27:08 -04:00
Timothy Clem
6517f12684
Merge remote-tracking branch 'origin/master' into python-relative-imports
2018-05-16 12:25:22 -07:00
Timothy Clem
a60ed7bc16
Merge remote-tracking branch 'origin/master' into package-dot-json-parsing
2018-05-16 12:07:13 -07:00
Timothy Clem
7137c057b4
Fix up example a bit
2018-05-16 10:43:38 -07:00
Rob Rix
6ee5cabdf8
Run allocator effects in the evaluator spec.
2018-05-16 13:43:14 -04:00
Timothy Clem
aa9eb68045
Fully construct PackageInfo here
2018-05-16 10:34:17 -07:00
Timothy Clem
453f60ee36
Some example js code for various module require/resolution options
2018-05-16 10:21:24 -07:00
Rob Rix
e8aa1a4da7
Revert "Move Precise & Latest into their own module."
...
This reverts commit 318ed8510aeb31ae892652685771bdba810d2df4.
2018-05-16 13:18:25 -04:00
Rob Rix
680336057d
Move Precise & Latest into their own module.
2018-05-16 11:53:24 -04:00
Timothy Clem
f81ea4bff5
s/File/Project b/c that makes more sense to me
2018-05-16 08:38:00 -07:00
Rob Rix
47e92a766f
Merge remote-tracking branch 'origin/master' into fix-abstract-semantics
2018-05-15 18:47:47 -04:00
Rob Rix
788618a9d0
Fix extracting values from Latest in the tests.
2018-05-15 17:43:57 -04:00
Timothy Clem
62956f78d7
Print and actually return a string
2018-05-15 11:57:18 -07:00
Timothy Clem
27ce720904
Test out relative python imports
2018-05-15 11:26:16 -07:00
Rob Rix
3ab781ea48
🔥 all the constraining functions since we can use type applications instead.
2018-05-15 13:51:07 -04:00
Rob Rix
dcaad09deb
Fix the specs.
2018-05-15 12:58:05 -04:00
Rob Rix
367982bc8d
Don’t use SomeRenderer in the CLI spec.
2018-05-14 18:44:19 -04:00
Rob Rix
84ea29a60b
Fix the tests.
2018-05-14 18:39:41 -04:00
joshvera
fb5c4c039d
hide error
2018-05-14 16:19:59 -04:00
Rob Rix
f047b57ecc
Encoding order is significant.
2018-05-14 16:18:57 -04:00
Rob Rix
03749d008e
We can just say diff now.
2018-05-14 16:11:31 -04:00
Rob Rix
5bae88724b
Move the diffTermPair tests into the interpreter spec.
2018-05-14 16:09:39 -04:00
Rob Rix
1128537b6a
Correct a bunch of fixtures.
2018-05-14 10:50:57 -04:00
Rob Rix
75ab25d443
Generalize the type of toOutput.
2018-05-14 10:31:40 -04:00
Rob Rix
b979e9757c
Run the builders.
2018-05-14 10:28:01 -04:00
Rob Rix
fc70382d5b
Correct the handle types.
2018-05-14 10:27:58 -04:00
Rob Rix
5813258037
Add a runBuilder helper.
2018-05-14 10:27:45 -04:00
Rob Rix
0d0aeafdc5
Add an openFileForReading helper for the tests.
2018-05-14 10:23:29 -04:00
Rob Rix
29be8a5243
Provide a helper which builds bytestrings.
2018-05-14 10:20:13 -04:00
Rob Rix
29af5d4d3a
Build the bytestrings.
2018-05-14 10:18:52 -04:00
joshvera
9e2b7725a6
Merge origin/master
2018-05-11 16:37:04 -04:00
Rob Rix
a9d3b29e02
We expect a ByteString here.
2018-05-11 15:31:28 -04:00
Rob Rix
9ed1bc4a38
ByteStrings.
2018-05-11 14:59:50 -04:00
Rob Rix
5497b9a2a4
Swap the Heap location/cell params.
2018-05-11 08:36:45 -04:00
Rob Rix
6ba840e90b
Go back to simple address types.
2018-05-11 08:35:43 -04:00
Rob Rix
67892e9cf1
Define Precise as a GADT indexed by its cell type.
2018-05-10 19:27:20 -04:00
Rob Rix
2abfd92678
Bump effects for https://github.com/joshvera/effects/pull/43
2018-05-10 18:27:10 -04:00
Rob Rix
dcad4d852c
Parameterize Heap by the cell type.
2018-05-10 12:31:12 -04:00
Rob Rix
716e225da9
Test that puts ends up in the traces.
2018-05-10 11:03:42 -04:00
Rob Rix
13660b9e9d
Test for expected symbols, not exact symbols.
2018-05-10 10:59:38 -04:00
Rob Rix
2410387e97
Allow the tests to examine the traces.
2018-05-10 10:58:24 -04:00
Rob Rix
75d2c50589
Test the results of cross-module function calls.
2018-05-10 10:26:07 -04:00
Rob Rix
c2f48fb982
🔥 the ns/addr conveniences.
2018-05-10 10:11:34 -04:00
Rob Rix
4fca683eae
Test for the presence of the desired symbols rather than the exact list.
2018-05-10 10:10:57 -04:00
Rob Rix
ae7ee6e860
Test Go environments/heaps against the names.
2018-05-10 10:07:11 -04:00
Rob Rix
5af09d94e1
Test PHP environments/heaps against the names, not addresses.
2018-05-10 10:03:59 -04:00
Rob Rix
69bd2c0af5
Test Python environments/heaps without encoding addresses.
2018-05-10 09:59:54 -04:00
Rob Rix
9ec588ed3c
Use the shared helpers for TypeScript.
2018-05-10 09:59:31 -04:00
Rob Rix
6e37f24cee
Define a helper to take namespaces apart.
2018-05-10 09:58:38 -04:00
Rob Rix
30a85b576d
Define a helper to dereference qualified names in values.
2018-05-10 09:55:11 -04:00
Rob Rix
821691549e
Test the bound names, not their addresses.
2018-05-10 09:28:11 -04:00
Rob Rix
8b8f3007cf
Test the imported names, not the prelude names.
2018-05-10 09:08:12 -04:00
Rob Rix
76a40939d6
Test the bound names.
2018-05-09 22:04:52 -04:00
Rob Rix
27a25d9a45
Type applications.
2018-05-09 22:04:46 -04:00
Rob Rix
91ca0e1aba
Run Gotos via a newtype to break the cycle in the effects types.
2018-05-09 21:30:34 -04:00
Rob Rix
924aa3e243
Correct the corpus for the new line directive syntax.
2018-05-09 15:24:42 -04:00
Rob Rix
c0993c63c9
Test our evaluation of __LINE__.
2018-05-09 15:23:52 -04:00
Rob Rix
3cbf66c57e
🔥 TermEffects.
2018-05-09 12:39:22 -04:00
Rob Rix
f18d066c88
🔥 the Term newtype.
2018-05-09 12:36:48 -04:00
Rob Rix
d02fdb419a
Only export spec.
2018-05-09 12:36:40 -04:00
Rob Rix
4dca1c121e
🔥 the term parameter to Evaluator.
2018-05-09 12:35:01 -04:00
Rob Rix
3948f74810
Correct the type of the module table effect.
2018-05-08 16:46:17 -04:00
Rob Rix
fb04c57bdf
Use a visible type application to inject the environment error.
2018-05-08 12:03:08 -04:00
Rob Rix
2aae3dbdd3
Allow runGoto to return its jump table.
2018-05-08 11:10:35 -04:00
Rob Rix
97915e1410
Rename lambda to closure.
2018-05-08 10:54:32 -04:00
Rob Rix
d9084f9f45
lambda takes the set of free variables as a parameter.
2018-05-08 10:54:04 -04:00
Rob Rix
5a4e6cb0b0
Merge branch 'evaluator-dsl' into evaluate-closures-without-terms
2018-05-08 10:40:41 -04:00
Rob Rix
8881dc0284
Fix an ambiguous reference to runM.
2018-05-08 10:40:25 -04:00
Rob Rix
65bcc461fc
Merge branch 'evaluator-dsl' into evaluate-closures-without-terms
2018-05-08 10:36:04 -04:00
Rob Rix
c153815859
Merge branch 'musical-chairs,-evaluator-edition' into evaluator-dsl
2018-05-08 10:32:51 -04:00
Rob Rix
eacb5b47d7
Implement goto using Goto effects embedding evaluators.
2018-05-08 10:19:50 -04:00
Rob Rix
2b2a6f0cd8
Specialize ValueError to Value.
2018-05-08 09:05:43 -04:00
Patrick Thomson
d12ecb8387
move the trace runners to Control.Effect
2018-05-07 17:22:26 -04:00
Rob Rix
b66ea73427
Reassociate errors in the specs.
2018-05-07 16:56:40 -04:00
Rob Rix
d9e76fb2c5
Test that we can call functions.
2018-05-07 16:06:21 -04:00
Rob Rix
c05884195d
Add environment errors to the mix.
2018-05-07 16:06:04 -04:00
Rob Rix
de1a8e1164
Clean up a redundant pure.
2018-05-07 16:05:55 -04:00
Rob Rix
b589d4f7d0
Define a FreeVariables instance for Term.
2018-05-07 16:05:27 -04:00
Rob Rix
b1dea9c5f0
Switch variable over to EnvironmentError.
2018-05-07 15:56:47 -04:00
Rob Rix
ca778fd76e
We don’t need to constrain the term type any more.
2018-05-07 15:25:05 -04:00
Rob Rix
4f64d95a51
🔥 redundant language extensions.
2018-05-07 15:21:41 -04:00
Rob Rix
28eec7a7ec
Lift TermEvaluators to Subterm evaluators.
2018-05-07 15:19:57 -04:00
Rob Rix
a4e823681f
Define a TermEvaluator synonym.
2018-05-07 15:19:36 -04:00
Patrick Thomson
50ea7d1a09
remove duplication
2018-05-07 15:13:40 -04:00
Rob Rix
3b4b953506
Run evaluators in IO.
2018-05-07 15:13:01 -04:00
Rob Rix
1bd817bc76
Test that we can construct integers.
2018-05-07 15:10:41 -04:00
Rob Rix
980fd74aed
Define an evaluator helper.
2018-05-07 15:10:11 -04:00
Rob Rix
47d48d695e
Add types for terms, values, and the effects for evaluating terms.
2018-05-07 15:09:50 -04:00
Patrick Thomson
110365733c
fix specs
2018-05-07 14:39:01 -04:00
Rob Rix
c427be3670
Stub in a spec for Evaluator.
2018-05-07 14:21:05 -04:00
Rob Rix
ca5ca629dc
Run the analysis.
2018-05-06 17:38:04 -04:00
Rob Rix
2fa602c98f
Fix stale references to interpret.
2018-05-06 17:37:44 -04:00
Rob Rix
a23bc350da
Constrain the specs to Value Precise.
2018-05-06 17:36:33 -04:00
Rob Rix
e638fb4715
Update the specs to use a testEvaluating analysis.
2018-05-06 17:30:07 -04:00
Rob Rix
b6709b4da2
Use the correct injection/projection functions in the tests.
2018-05-06 17:23:39 -04:00
Rob Rix
da3ddd2b17
Fix the specs.
2018-05-02 16:10:56 -04:00
Rob Rix
243fb331fc
Fix stale references to inj in the tests.
2018-05-02 15:55:10 -04:00
Rob Rix
911111987a
Return to piecemeal state effects, and combine them in Evaluating.
2018-05-02 15:54:11 -04:00
Rob Rix
152fe6a6a8
Fix the ambiguity around Sum.
2018-05-02 13:14:51 -04:00
Rob Rix
ebc8e01cc4
Use our own local definition of Sum.
2018-05-02 12:00:15 -04:00
Ayman Nadeem
b1c05d6755
Merge remote-tracking branch 'origin/master' into java-assignment
2018-05-01 10:57:21 -07:00
Rob Rix
216b414995
LoadError doesn’t need a type parameter for the value.
2018-04-30 16:40:27 -04:00
Rob Rix
57389da2c9
Add a test that we pass arguments correctly.
2018-04-30 14:50:16 -04:00
Rob Rix
013b5cb4b7
Merge branch 'master' into analyses-provide-and-handle-effects
2018-04-30 14:22:09 -04:00
Ayman Nadeem
f018922911
add tests
2018-04-27 15:50:39 -07:00
Timothy Clem
a5cc587b85
Merge remote-tracking branch 'origin/master' into eval-__FILE__
2018-04-27 07:59:06 -07:00
Timothy Clem
d2b47533f7
Fix up test
2018-04-27 07:56:59 -07:00
Rob Rix
0720ee9267
A tidy module header is a happy module header.
2018-04-27 10:11:54 -04:00
Rob Rix
173645a48b
🔥 readFileVerbatim.
2018-04-27 10:10:43 -04:00
Rob Rix
2fc2090e02
Move ValueError & throwValueError into Data.Abstract.Value.
2018-04-27 10:09:03 -04:00
Rob Rix
33d68f9d8d
Treat breaks as an effect.
2018-04-27 10:00:07 -04:00
Rob Rix
97c76c7fdc
Rename ReturnThrow to Return, and use it as an effect.
2018-04-27 09:26:40 -04:00
Charlie Somerville
7cdb2625fd
fix tests
2018-04-27 12:04:48 +10:00
Timothy Clem
08600b4155
Merge remote-tracking branch 'origin/master' into eval-__FILE__
2018-04-26 13:23:42 -07:00
Rob Rix
1942e20af1
🔥 runAnalysis.
2018-04-26 10:17:47 -04:00
Rob Rix
5ed0e37740
Move diffWithParser into the tests.
2018-04-26 09:05:18 -04:00
Rob Rix
94f5ea39dd
Add an Erroring analysis for LoadErrors.
2018-04-26 08:50:41 -04:00
Timothy Clem
2bc392b282
Merge remote-tracking branch 'origin/master' into eval-__FILE__
2018-04-25 16:23:07 -07:00
Rob Rix
f264a605ed
Fix up the specs.
2018-04-25 17:12:10 -04:00
Rob Rix
2267f24ea8
Merge branch 'master' into analyses-provide-and-handle-effects
2018-04-25 16:43:00 -04:00
Timothy Clem
8e50c3b5f9
Fix tests
2018-04-25 12:46:38 -07:00
Timothy Clem
37c8bffb82
Merge remote-tracking branch 'origin/master' into resume-on-resolutionerror
2018-04-25 10:51:23 -07:00
Rob Rix
22c8fec448
Import the other exceptions.
2018-04-25 12:46:01 -04:00
Rob Rix
ddef556499
Import Erroring.
2018-04-25 12:38:28 -04:00
Rob Rix
4be5418b92
Correct the type of TestEvaluating.
2018-04-25 12:34:08 -04:00
joshvera
f7e6609069
Remove readProjectEntry
2018-04-25 12:10:33 -04:00
Timothy Clem
af46dbd3aa
Merge remote-tracking branch 'origin/master' into resume-on-resolutionerror
2018-04-24 14:00:07 -07:00
Josh Vera
48c471e9d6
Merge branch 'master' into project-dir
2018-04-24 16:31:20 -04:00
joshvera
421cc0d1a1
Add readProjectEntry to the Files effects
2018-04-24 15:48:44 -04:00
Rob Rix
aab795d9bb
Correct an import in the specs.
2018-04-24 12:00:43 -04:00
joshvera
3fb3097c96
back to using Maybe Language in File
2018-04-23 19:47:13 -04:00
Patrick Thomson
930b7d513d
Merge remote-tracking branch 'origin/master' into break-continue
2018-04-23 19:10:37 -04:00
Timothy Clem
ba2d2b6eb3
Changed the structure of ImportPath so I guess we diff differently
2018-04-23 15:53:53 -07:00
Patrick Thomson
061b6852a8
Add test cases.
2018-04-23 13:14:52 -04:00
Patrick Thomson
ab8dc613fd
Fix tests.
2018-04-23 13:09:32 -04:00
Timothy Clem
0ebf2185ab
Merge remote-tracking branch 'origin/master' into lazy-parse
2018-04-23 09:23:58 -07:00
Patrick Thomson
6f63463269
Remove explicit Paren node from syntax trees.
...
As @robrix pointed out, adding explicit parenthesis nodes to our ASTs
bloats them with no added gain in expressivity. A pretty-printing
solution should use something analogous to `showsPrec` to ensure that
parentheses are printed properly.
2018-04-23 11:00:10 -04:00
Timothy Clem
10d13cd424
Bring preludes back for testing, clean up Util
2018-04-22 07:47:59 -07:00
Timothy Clem
45386ed1ce
Get the tests compiling again
2018-04-21 07:22:09 -07:00
Timothy Clem
e2722ea7e9
Construct File(s) here too
2018-04-20 16:34:37 -07:00
Timothy Clem
f96db32268
Few more test fixes
2018-04-20 16:30:06 -07:00
Timothy Clem
7c2a8a464e
Couple of test fixes
2018-04-20 16:27:53 -07:00
Charlie Somerville
0d9cb46d07
add test cases for early return
2018-04-20 14:47:52 +10:00
Timothy Clem
07d8080ebb
Merge remote-tracking branch 'origin/master' into parse-examples
2018-04-19 13:12:25 -07:00
joshvera
8b2f2656cb
Merge remote-tracking branch 'origin/master' into infinite-loops
2018-04-19 14:06:55 -04:00
joshvera
c8784ffab9
Revert "Yield maybes from scopedEnvironment, and values from ScopedEnvironmentErrors"
...
This reverts commit d09318a14143b80ae4e90a7192e94b0f9b512bd3.
2018-04-19 13:45:39 -04:00
joshvera
984cda99d0
Fix tests
2018-04-19 13:35:45 -04:00
Timothy Clem
da644812c6
Remove js-test submodule
2018-04-18 14:20:25 -07:00
Timothy Clem
892eb982b0
Remove jquery as submodule
2018-04-18 14:15:30 -07:00
Timothy Clem
d20d2a02bd
Remove backbone as example repo
2018-04-18 13:56:39 -07:00
Timothy Clem
2617b3a4a6
Move cli fixtures around
2018-04-18 13:55:21 -07:00
Timothy Clem
b9857cd033
Move the toc test fixtures around too
2018-04-18 13:42:29 -07:00
Timothy Clem
ea0afa1747
Move corpus tests into their own dir
2018-04-18 13:33:17 -07:00
joshvera
d8c597e894
Merge remote-tracking branch 'origin/master' into typescript-graphs
2018-04-18 14:20:22 -04:00
Patrick Thomson
3165913188
fix go diffs
2018-04-18 10:17:21 -04:00
joshvera
5bac8ca4cf
Fix test
2018-04-17 19:35:57 -04:00
joshvera
3a93f1fca8
Import Evaluatable for ExportError
2018-04-17 19:26:35 -04:00
joshvera
7d53807286
Update test to expect an resumable EvalError
2018-04-17 19:24:55 -04:00
Patrick Thomson
eb649777cd
fix test cases
2018-04-17 18:42:02 -04:00
Timothy Clem
95b7fd5888
Resolve module import paths that walk up directory structure (e.g. ../)
2018-04-17 14:13:01 -07:00
Timothy Clem
400f831f5c
These assign as symbols now!
2018-04-16 16:59:16 -07:00
Timothy Clem
36e4bbecd9
Python fixture fixes
2018-04-16 16:52:54 -07:00
Timothy Clem
44e0d2f08e
Merge remote-tracking branch 'origin/master' into typescript-graphs
2018-04-16 08:28:48 -07:00
Charlie Somerville
bdcd8fcbc3
ruby: implement more strict assignment for parameters
2018-04-16 16:19:23 +10:00
Charlie Somerville
a81beeb125
ruby: register parameters as local identifier names
2018-04-16 16:19:23 +10:00
Charlie Somerville
cdb5672b27
test: fix expected output for parse and diff cli tests
2018-04-16 16:19:23 +10:00
Timothy Clem
c6cdfc4958
Fix CLI specs
2018-04-16 16:19:23 +10:00
Charlie Somerville
2d320fdba1
ruby: update test fixtures
2018-04-16 16:19:23 +10:00
Charlie Somerville
ba99be7345
ruby: emit barewords that aren't defined locals as method calls
2018-04-16 16:19:23 +10:00
Timothy Clem
ab0a6072b8
Some JavaScript analysis fixtures
2018-04-13 10:52:31 -07:00
Timothy Clem
775d39088a
Merge remote-tracking branch 'origin/master' into charliesome/ruby-method-calls
2018-04-10 08:32:03 -07:00
Timothy Clem
8875a29c55
These now correctly parse as blocks
2018-04-10 07:57:28 -07:00
Rob Rix
d863d282b1
🔥 the Mergeable spec.
2018-04-09 16:38:28 -04:00
joshvera
2e84f8a637
Revert "Merge pull request #1728 from github/revert-ruby-method-calls"
...
This reverts commit 96fc6114d8d1d74c42d3971aa24e6a484de52933, reversing
changes made to 2f9da5213ef4cac0048339c9f84c33b873e88cc2.
2018-04-09 16:10:05 -04:00
joshvera
b012b97571
Revert "Merge pull request #1726 from github/charliesome/ruby-method-calls"
...
This reverts commit 3729f84c487cb2613fd99eca4c6cdb2178c88806, reversing
changes made to d8f0566783407780c1a0d0855f43200530887c54.
2018-04-09 14:45:34 -04:00
Charlie Somerville
774ed642bf
ruby: update test fixtures
2018-04-09 12:04:11 +10:00
Josh Vera
d4bcfae104
Merge branch 'master' into repo-import-graph
2018-04-06 13:21:30 -04:00
Patrick Thomson
d31e3eca88
fix ALL the test failures
2018-04-06 13:05:28 -04:00
joshvera
cc21e22a9b
Fix test fixtures
2018-04-06 12:42:24 -04:00
joshvera
56af15be92
Modify mergeNewer to merge from global envs to local envs
2018-04-06 12:37:01 -04:00
joshvera
1f441ec518
Merge remote-tracking branch 'origin/master' into repo-import-graph
2018-04-05 19:50:59 -04:00
joshvera
fde2253fc5
pure?
2018-04-05 19:49:50 -04:00
Rob Rix
a50f1226d4
Avoid re-exporting Task.parsePackage in SpecHelper.
2018-04-05 09:38:31 -04:00
Rob Rix
98084c5e81
Merge branch 'master' into task-in-eff
2018-04-05 09:18:32 -04:00
Rob Rix
41d974528e
Fix a stale import.
2018-04-05 09:18:20 -04:00
Patrick Thomson
17cab0302e
Merge branch 'master' into ruby-low-precedence-booleans
2018-04-04 15:49:07 -04:00
Patrick Thomson
faf246ff1e
Merge remote-tracking branch 'origin/master' into fix-scientific-parsing
2018-04-04 15:40:51 -04:00
Patrick Thomson
1138bd3141
Fix tests.
2018-04-04 12:53:54 -04:00
Timothy Clem
4b9caec4c5
Fix up tests for Name wrapper
2018-04-04 08:59:13 -07:00
Timothy Clem
7dd2c2b0c4
With print in prelude, fix up these specs
2018-04-03 15:50:18 -07:00
Patrick Thomson
c36256e943
Standardize and fix floating-point parsing.
...
The existence of #1705 showed me that it's time to remove the bandaid
of a fix that was `normalizeFloatString` in #1537 . This patch
introduces a proper Attoparsec parser for Scientific values that
handles the vaguaries of cross-language floating-point syntax. We
already depended on Attoparsec indirectly, so adding it as an explicit
dependency is fine.
A unit test is included, with examples taken from the tree-sitter corpora.
2018-04-03 17:02:56 -04:00
Timothy Clem
208d16e131
Disable import-graph specs for now
2018-04-03 10:12:20 -07:00
Timothy Clem
69a46e4edc
Merge remote-tracking branch 'origin/master' into module-resolution
2018-04-02 16:28:35 -07:00
Timothy Clem
275d558843
Javascript import assignment changed - update fixtures
2018-04-02 15:20:31 -07:00
Timothy Clem
64369758a6
qualified identifier changes changes ruby assignment here
2018-04-02 15:18:56 -07:00
Timothy Clem
e9b6887268
Python import assignment changed - update fixtures
2018-04-02 15:18:23 -07:00
Timothy Clem
1001e85173
Some other go changes due to lack of qualifedName
2018-04-02 15:14:59 -07:00
Timothy Clem
dfafcc983f
Go import assignment changed - update fixtures
2018-04-02 15:14:05 -07:00
Timothy Clem
568adc1477
TypeScript import syntax changed - update fixtures
2018-04-02 15:11:45 -07:00
Timothy Clem
74c195385e
Disable specs for import graph output temporarily
2018-04-02 15:11:25 -07:00
Timothy Clem
f3b196f962
Bring TS assignment and eval of imports up-to-date
2018-04-02 14:54:23 -07:00
Timothy Clem
d64da14b27
Fix up Go specs
2018-04-02 14:54:08 -07:00
Timothy Clem
61327b7242
Cleanup this ts fixture
2018-04-02 14:53:24 -07:00
Timothy Clem
a6eae9dc88
Fix up go imports for the new world
2018-04-02 13:32:41 -07:00
Timothy Clem
55fa6480d6
Fix up PHP eval specs
2018-04-02 11:37:01 -07:00
Timothy Clem
eb883770df
Bring Ruby up to speed with latest import strategy
2018-04-02 11:31:26 -07:00
Timothy Clem
69e5220fff
Typo
2018-04-02 11:18:58 -07:00
Timothy Clem
e54e61cea0
Python imports in the new world work again
2018-04-02 11:07:09 -07:00
Timothy Clem
a3d35ac9a0
WIP: Attempt to back out Identifiers as qualified names
2018-04-02 10:40:52 -07:00
Rob Rix
a522efcb1e
Hide an ambiguous symbol.
2018-03-30 19:53:23 -04:00
Timothy Clem
a495716e09
Fix it so that the tests compile
2018-03-30 16:19:39 -07:00
joshvera
e8db080923
Merge remote-tracking branch 'origin/master' into less-fail
2018-03-28 13:12:20 -04:00
joshvera
af0793a7ad
Add Eq1 error instances and fix tests
2018-03-28 12:58:12 -04:00
Josh Vera
6bb737c18f
Merge branch 'master' into combined-state-effects
2018-03-28 11:56:17 -04:00
Josh Vera
c79f178fc1
Merge branch 'master' into matching
2018-03-28 11:45:57 -04:00
Rob Rix
5ae24ddc89
Merge branch 'master' into combined-state-effects
2018-03-28 08:33:19 -04:00
Timothy Clem
5c1e5514f7
Merge branch 'master' into you-get-a-namespace
2018-03-27 15:40:30 -07:00
Timothy Clem
3d56947e82
Fix typos
2018-03-27 15:18:38 -07:00
Patrick Thomson
85d064bf95
Merge remote-tracking branch 'origin/master' into matching
2018-03-27 16:34:31 -04:00
Patrick Thomson
034bb562d4
Introduce tree-automata DSL for filtering and matching ASTs.
...
This patch adds the `Matcher` monad, which is capable of filtering any
recursive data structure, bottom-up, yielding a list of (or an
optional) result. These functions are probably going to be used over
`Term` values, so API is provided to wrap common projection functions.
The API was more or less copied directly from that of Clang's AST
matching facilities.
There are a lot of things we can do in the future:
* Binding results yielded in matchers to associated names, for future
transformation stages to look up and modify.
* Actual transformation stages.
* Optimizations. This is not very fast.
A million thanks to @robrix , whose sage advice managed to turn my
kooky idea for an API into something really special and exciting.
2018-03-27 16:14:30 -04:00
Rob Rix
b8d714af28
Use the EvaluatingState fields directly.
2018-03-27 15:23:26 -04:00
Rob Rix
7a10eabfd7
🔥 an unused language pragma.
2018-03-27 15:14:25 -04:00
Timothy Clem
e770aaec35
Fix up Import graph output
2018-03-27 10:20:41 -07:00
Timothy Clem
e2d13b6cdc
Fix up specs
2018-03-27 10:20:28 -07:00
Timothy Clem
094432934f
Ruby class example
2018-03-26 15:30:11 -07:00
Timothy Clem
bea56e5bab
Demonstrate a little more detail of subclassing
2018-03-26 15:29:39 -07:00
Timothy Clem
e78740ef88
Add another layer to Ruby module fixture
2018-03-26 13:00:49 -07:00
Timothy Clem
3eece19234
Assert environment has module in it
2018-03-26 12:53:58 -07:00
Timothy Clem
f3ceab31b0
Cleanup
2018-03-26 12:53:49 -07:00
Timothy Clem
203042742b
Spec to asset eval of ruby modules
2018-03-26 12:50:06 -07:00
Timothy Clem
4c445c2fc1
Fix references to PackageDef in tests
2018-03-26 12:49:52 -07:00
Timothy Clem
365a592c03
Go assignment changed with new Package syntax
2018-03-26 11:09:22 -07:00
Josh Vera
4b22e851d3
Merge branch 'master' into disable-doctests
2018-03-26 13:28:03 -04:00
joshvera
e98dbf177f
Explicitly list out doctest modules
2018-03-26 13:03:25 -04:00