1
1
mirror of https://github.com/github/semantic.git synced 2024-12-25 16:02:43 +03:00
Commit Graph

239 Commits

Author SHA1 Message Date
Rob Rix
89cdd3bda3
Reformat the signature for typecheckingAnalysis. 2019-07-19 08:46:02 -04:00
Rob Rix
7d336c9d9a
Reformat a little. 2019-07-19 08:43:31 -04:00
Rob Rix
f81384767a
Reformat the signature for eval. 2019-07-18 22:00:45 -04:00
Rob Rix
01c963069e
Merge branch 'types-as-syntax' into gen-x 2019-07-18 21:37:07 -04:00
Rob Rix
4ccf31d863
Replace Substitutable with monadic substitution. 2019-07-18 17:01:03 -04:00
Rob Rix
fcaf1307dd
Replace FreeVariables with a function abstracted over a Foldable instance. 2019-07-18 16:53:00 -04:00
Rob Rix
e533091826
🔥 Gensym. 2019-07-18 16:39:23 -04:00
Rob Rix
cda5e3d80e
🔥 Namespaced. 2019-07-18 16:38:58 -04:00
Rob Rix
467292d509
🔥 Name. 2019-07-18 16:38:25 -04:00
Rob Rix
62c09c308b
🔥 Naming. 2019-07-18 16:37:51 -04:00
Rob Rix
59f09cc679
🔥 NamingC & runNaming. 2019-07-18 16:37:13 -04:00
Rob Rix
baa675f235
🔥 prime. 2019-07-18 16:35:57 -04:00
Rob Rix
03ed4cd3ae
Analyze with names in User. 2019-07-18 16:34:41 -04:00
Rob Rix
122b631811
Use Void to represent closed terms. 2019-07-18 16:19:05 -04:00
Rob Rix
5dbf727985
Generalize in pure code. 2019-07-18 16:10:16 -04:00
Rob Rix
a83cdffa73
Define a function to close a term. 2019-07-18 16:08:32 -04:00
Rob Rix
8371475e43
Use hoistTerm to generalize monotypes to polytypes. 2019-07-18 16:02:52 -04:00
Rob Rix
29fc72f288
Define a hoisting operation over Term. 2019-07-18 15:56:14 -04:00
Rob Rix
2388800416
🔥 the duplication between Monotype & Polytype. 2019-07-18 15:53:30 -04:00
Rob Rix
3e7123ff85
🔥 the M prefixes on Monotype’s constructors. 2019-07-18 15:48:24 -04:00
Rob Rix
b81cbf2686
Represent Monotype in Term. 2019-07-18 15:46:47 -04:00
Rob Rix
a5151d34e1
Derive Eq, Ord, & Show instances for Polytype. 2019-07-18 15:31:53 -04:00
Rob Rix
fcfc81606a
Derive some more instances for Monotype. 2019-07-18 15:26:13 -04:00
Rob Rix
c4fa4faf5c
🔥 PBound/PFree. 2019-07-18 15:24:43 -04:00
Rob Rix
7763028709
🔥 MFree. 2019-07-18 15:23:59 -04:00
Rob Rix
a9894d026e
Bind polytypes as scope-safe syntax. 2019-07-18 15:21:57 -04:00
Rob Rix
05a309745b
Tidy up the language extensions. 2019-07-18 14:45:30 -04:00
Rob Rix
70f67c0165
🔥 the Syntax class. 2019-07-18 14:44:36 -04:00
Rob Rix
2743895e78
🔥 the Syntax instance for Core. 2019-07-18 14:44:10 -04:00
Rob Rix
49baa468f9
🔥 iter. 2019-07-18 14:43:25 -04:00
Rob Rix
2f8126875d
Generalize stripAnnotations. 2019-07-18 14:41:04 -04:00
Rob Rix
9eae24ecc1
Recur through annotations. 2019-07-18 14:39:20 -04:00
Rob Rix
aa1e36bc93
Define stripAnnotations directly. 2019-07-18 14:37:19 -04:00
Rob Rix
97320176dc
🔥 interpret. 2019-07-18 14:34:44 -04:00
Rob Rix
4cbc23b76d
🔥 cata. 2019-07-18 14:34:16 -04:00
Rob Rix
e6e580d0a2
Spacing. 2019-07-18 14:30:20 -04:00
Rob Rix
fbb5688bd4
Use the top-level definition of with. 2019-07-18 14:29:57 -04:00
Rob Rix
d7e4f2129d
Combine prettyCore & prettify. 2019-07-18 14:28:12 -04:00
Rob Rix
4598da7e21
Define prettify direct-recursively.
This uses fromScope to recur, and accumulates a continuation for the variables to avoid n² fmaps.
2019-07-18 14:26:51 -04:00
Rob Rix
72701fe9fc
Reuse fromScope. 2019-07-18 11:02:56 -04:00
Rob Rix
e36cc7c184
Fix the doctest for concrete. 2019-07-18 10:25:43 -04:00
Rob Rix
325ec2a2c4
Sort the fixity declarations like in the syntax. 2019-07-17 15:29:40 -04:00
Rob Rix
d3cf5624e7
Give fixities for ... and .=. 2019-07-17 15:29:22 -04:00
Rob Rix
d9ea6e783e
Correct the precedences of pretty-printing for :. and :=. 2019-07-17 15:29:12 -04:00
Rob Rix
36827bb85c
Strip annotations in the tests. 2019-07-17 15:23:56 -04:00
Rob Rix
8aacefb5d1
Parse string literals. 2019-07-17 15:10:21 -04:00
Rob Rix
d076bbb21f
🔥 re-exports of iter & cata. 2019-07-17 14:54:29 -04:00
Rob Rix
1d94634cce
Generate User names. 2019-07-17 12:55:05 -04:00
Rob Rix
25f6f96ea4
Define a helper for constructing Named User. 2019-07-17 12:54:08 -04:00
Rob Rix
76f79fd315
Specialize pretty-printing to User. 2019-07-17 12:51:42 -04:00