Rob Rix
e8df177ed4
Rename a bunch of type parameters.
2018-03-14 11:11:39 -04:00
Rob Rix
50f57fcf6f
Generalize Environment over the address type.
2018-03-14 11:10:47 -04:00
Rob Rix
9d9b0abd67
Use EnvironmentFor to abbreviate lookupOrAlloc(').
2018-03-14 11:10:08 -04:00
Rob Rix
f105ecbdaa
Align Configuration fields.
2018-03-14 11:09:20 -04:00
Rob Rix
12824b018a
Sort imports.
2018-03-14 11:09:14 -04:00
Patrick Thomson
3b9b3703f6
Merge pull request #1557 from github/symbol-eval
...
Evaluatable instance for symbols.
2018-03-14 10:58:34 -04:00
Rob Rix
971ca6e5ad
Define an AbstractValue typeclass with instances for Value & Type.
2018-03-14 10:58:08 -04:00
Rob Rix
426b48ea1c
Define LocationFor as an open type family.
2018-03-14 10:55:59 -04:00
Patrick Thomson
78212c6efb
Merge remote-tracking branch 'origin/master' into symbol-eval
2018-03-14 10:50:34 -04:00
Patrick Thomson
4ff2ca71cc
Merge pull request #1560 from github/rationals
...
Add Evaluatable instance for Rational and unify numerical interface.
2018-03-14 10:48:13 -04:00
Patrick Thomson
b7b1b1f2ef
Merge remote-tracking branch 'origin/master' into symbol-eval
2018-03-14 10:46:56 -04:00
Rob Rix
b8fb250e10
apply does not take Subterms.
2018-03-14 10:45:03 -04:00
Patrick Thomson
fc122bdfbe
Merge branch 'symbol-eval' of github.com:github/semantic into symbol-eval
2018-03-14 10:43:33 -04:00
Patrick Thomson
99d4815d3a
Don't do anything clever with stripping colons from symbols.
2018-03-14 10:42:50 -04:00
Patrick Thomson
229902a5ca
Merge remote-tracking branch 'origin/master' into rationals
2018-03-14 10:40:00 -04:00
Patrick Thomson
81aab6572e
Address Rob's changes.
2018-03-14 10:36:56 -04:00
Rob Rix
25e95513ee
Re-indent the signature for assign.
2018-03-14 10:34:00 -04:00
Rob Rix
86626ca242
Reformat a bunch of signatures.
2018-03-14 10:33:39 -04:00
Rob Rix
568cda0f12
Correct liftComparison.
2018-03-14 10:33:34 -04:00
Rob Rix
53e582fe8a
Merge branch 'master' into fix-fix
2018-03-14 10:24:20 -04:00
Rob Rix
63c88b8aa5
Try letrec'ing a loop variable.
2018-03-14 10:24:13 -04:00
Rob Rix
eb41c0886e
Add a typescript typechecking entry point.
2018-03-14 10:23:54 -04:00
Rob Rix
944fb5d879
Merge pull request #1555 from github/garbage-collecting
...
Garbage Collecting
2018-03-14 09:48:39 -04:00
Rob Rix
3a654abb08
Reformat RequiredEffects over multiple lines.
2018-03-14 09:40:45 -04:00
Rob Rix
6918fb31cf
Merge branch 'master' into garbage-collecting
2018-03-14 09:39:55 -04:00
Rob Rix
9b91c742b2
Merge pull request #1559 from github/import-environments
...
Import environments
2018-03-14 09:38:59 -04:00
Rob Rix
5f86831c28
🔥 Interface values.
2018-03-14 09:31:05 -04:00
Rob Rix
5e5599c9e8
Copy my changes back.
2018-03-14 09:30:45 -04:00
Rob Rix
6833ac039e
Merge branch 'master' into import-environments
2018-03-14 09:07:46 -04:00
Patrick Thomson
0d248e2aab
Make sure we match Rationals in liftNumeric.
2018-03-13 20:55:46 -04:00
Patrick Thomson
6a604628d0
Merge branch 'master' into symbol-eval
2018-03-13 19:19:41 -04:00
Patrick Thomson
ca96b02869
strictness annotations. will this do anything? only time will tell
2018-03-13 19:03:00 -04:00
Patrick Thomson
f9e8edddff
Merge remote-tracking branch 'origin/master' into rationals
2018-03-13 18:24:25 -04:00
Patrick Thomson
92a7b4ca93
Add Evaluatable instance for Rational and unify numerical interface.
...
This one's kind of a doozy. We pull in a GADT that wraps an `Integer`,
`Rational`, or `String`, and change the interpreted value types to
hold instances of this GADT (`Number`). We also provide a rank-2
wrapper that hides the type parameter when necessary.
The upshot of this patch is that we get support for rational numbers
and a cleaner interface in MonadValue, without sacrificing a mote of
type safety: interpreted `Integer` values are guaranteed to contain a
Haskell `Integer`.
On the other hand, it's kind of a monstrosity. Please let me know if
you spot any places where I can simplify these constructs or document
the code more fully.
To test in Ruby, evaluate `3r ** 4r`.
2018-03-13 18:13:38 -04:00
Timothy Clem
4599dd7ce5
Remove extraneous plainImport
2018-03-13 14:33:51 -07:00
Rob Rix
2ecc371f8d
Revert "Subterm takes a parameter for the monadic context."
...
This reverts commit 1d3e72a833681f3010446cd636af86e005290745.
2018-03-13 17:09:18 -04:00
Rob Rix
d6c6662283
Subterm takes a parameter for the monadic context.
2018-03-13 17:05:38 -04:00
Timothy Clem
0fd2c3eb05
Specify default-language for benchmarks target
2018-03-13 14:04:39 -07:00
Timothy Clem
ffd7a780e2
Merge remote-tracking branch 'origin/master' into import-language-tour
2018-03-13 14:04:22 -07:00
Rob Rix
caa0848aff
Add a letrec construct.
2018-03-13 16:58:50 -04:00
Timothy Clem
3cbd4d004d
Merge pull request #1535 from github/typescript-exports
...
Typescript exports
2018-03-13 13:57:04 -07:00
Timothy Clem
62de6d1ca5
Actually remove this
2018-03-13 13:47:13 -07:00
Josh Vera
91a5f87742
Merge branch 'master' into symbol-eval
2018-03-13 15:42:13 -05:00
joshvera
fbe80583ad
Merge branch 'typescript-exports' of https://github.com/github/semantic-diff into typescript-exports
2018-03-13 13:39:38 -07:00
Josh Vera
a8534f481f
Merge branch 'master' into typescript-exports
2018-03-13 15:32:19 -05:00
joshvera
b094d4c0f6
Add Exports constraint to MonadEnvironment instance
2018-03-13 13:21:50 -07:00
Timothy Clem
1309ccd217
Slightly nicer way to express this
2018-03-13 13:19:48 -07:00
joshvera
f93243f5b5
Merge remote-tracking branch 'origin/master' into typescript-exports
2018-03-13 13:13:53 -07:00
Rob Rix
1e1495a507
Use while
to define forLoop
.
2018-03-13 16:10:20 -04:00
Timothy Clem
f3b2e0cd2a
Store a list of terms in the unevaluted module table to allow multi file module imports
2018-03-13 13:09:04 -07:00