1
1
mirror of https://github.com/github/semantic.git synced 2024-12-24 23:42:31 +03:00
Commit Graph

11355 Commits

Author SHA1 Message Date
Rob Rix
68724970d0 Rename the test. 2017-04-06 14:13:09 -04:00
Rob Rix
ecdb6a1d59 Test that we can match a comment. 2017-04-06 13:36:54 -04:00
Rob Rix
049df31589 Define Show1 instances for most of the syntax types. 2017-04-06 13:36:43 -04:00
Rob Rix
8dd1745c56 Define (incorrect) GShow1 instances for constructors and selectors. 2017-04-06 13:34:57 -04:00
Rob Rix
c62bbc17b1 Define GShow1 lifted over compositions. 2017-04-06 11:52:08 -04:00
Rob Rix
4fe7be91c5 Define GShow1 lifted over products. 2017-04-06 11:52:00 -04:00
Rob Rix
ea3649ea79 Define GShow1 lifted over sums. 2017-04-06 11:49:51 -04:00
Rob Rix
2996bd8561 Define a bunch of obvious GShow1 instances for generic representation types. 2017-04-06 11:48:50 -04:00
Rob Rix
bcfd99afde Define a few GShow1 instances for types with Show1 instances. 2017-04-06 11:43:18 -04:00
Rob Rix
d9abc56818 Define generic implementations for Show1. 2017-04-06 11:43:01 -04:00
Rob Rix
467c808616 Define a GShow1 typeclass. 2017-04-06 11:42:47 -04:00
Rob Rix
ebb97d8a75 Stub in a module for a generic Show1. 2017-04-06 11:34:50 -04:00
Rob Rix
904b32092a Define a Show1 instance for Union. 2017-04-06 11:33:23 -04:00
Rob Rix
368a8a498d Define Generic1 & Eq1 instances for declarations. 2017-04-06 11:29:56 -04:00
Rob Rix
ae2b122b85 Define Generic1 & Eq1 instances for statements. 2017-04-06 11:27:51 -04:00
Rob Rix
30ffbe6421 Define Generic1 & Eq1 instances for literals. 2017-04-06 11:21:35 -04:00
Rob Rix
3d1feb70a4 Define an Eq1 instance for empty unions.
These can never be constructed, so we just return False in case somebody decides to apply this to bottom.
2017-04-06 11:19:57 -04:00
Rob Rix
349214b5c5 Compositions of functors use the appropriate Eq1 instance. 2017-04-06 11:19:21 -04:00
Rob Rix
3f093df987 Recursive applications depend on an Eq1 instance. 2017-04-06 10:50:12 -04:00
Rob Rix
828c7da001 Define Eq1 instances for Leaf, Branch, and Identifier. 2017-04-06 10:40:49 -04:00
Rob Rix
5166900702 Define an Eq1 instance for Comment. 2017-04-06 10:39:22 -04:00
Rob Rix
7f401c4e08 Re-export Eq1 from the generic module. 2017-04-06 10:27:00 -04:00
Rob Rix
6163caf82a Define an Eq1 instance for Union. 2017-04-06 10:19:09 -04:00
Rob Rix
fbcc5e7c43 Derive Eq & Show instances for Node. 2017-04-06 10:16:48 -04:00
Rob Rix
83d0248500 Stub in a module for tests of Ruby syntax assignment. 2017-04-06 10:09:12 -04:00
Rob Rix
b2d5e7eac1 Take a stab at assigning method declarations. 2017-04-06 09:43:12 -04:00
Rob Rix
376de45263 Take a stab at assigning class declarations. 2017-04-06 09:40:47 -04:00
Rob Rix
ecc1c075a6 Ruby can contain identifiers. 2017-04-06 09:39:44 -04:00
Rob Rix
4c959d4635 Define Identifier syntax. 2017-04-06 09:23:52 -04:00
Rob Rix
9afc6986cc Add a bunch more productions. 2017-04-06 09:21:20 -04:00
Rob Rix
3afba97601 Note the inefficiency of Alt. 2017-04-05 22:24:57 -04:00
Rob Rix
31940f376f Add a bunch more production symbols. 2017-04-05 21:40:10 -04:00
Rob Rix
43eba62216 Define an alternative instance for Assignment. 2017-04-05 21:34:58 -04:00
Rob Rix
8af3b80138 📝 stepAssignment. 2017-04-05 21:22:28 -04:00
Rob Rix
0a4dc5a5d1 📝 the Assignment combinators. 2017-04-05 21:21:35 -04:00
Rob Rix
ddba2b53cd Define small-step semantics for assignment. 2017-04-05 21:16:09 -04:00
Rob Rix
bca1bf08d8 Define a failure combinator.
This is kind of a stand-in.
2017-04-05 21:15:58 -04:00
Rob Rix
c265eeb4c9 🔥 the Child term. 2017-04-05 21:15:32 -04:00
Rob Rix
37525402de Define a type synonym for AST. 2017-04-05 21:05:11 -04:00
Rob Rix
4000319ae2 Define a placeholder input syntax node type. 2017-04-05 21:05:03 -04:00
Rob Rix
1242721981 Define a rose tree type. 2017-04-05 21:04:50 -04:00
Rob Rix
a3dee74ac0 Children assignment takes an assignment to map over the children. 2017-04-05 21:03:02 -04:00
Rob Rix
786290ed05 🔥 the Semigroup instance & And constructor. 2017-04-05 20:05:14 -04:00
Rob Rix
a9fb2b6759 Redefine Rule to always be productive. 2017-04-05 19:46:41 -04:00
Rob Rix
315c5e6e9b Use the Program rule at the top level. 2017-04-05 16:17:04 -04:00
Rob Rix
25fd886dfb Generalize the type of children. 2017-04-05 16:16:50 -04:00
Rob Rix
9a82e14e9e Define assignment for if statements. 2017-04-05 16:14:57 -04:00
Rob Rix
70f0c29758 Define assignment of a child term. 2017-04-05 16:14:48 -04:00
Rob Rix
a9ce523c47 Define a comment assignment. 2017-04-05 16:02:26 -04:00
Rob Rix
696ea064db Define an assignment term producing a node’s children. 2017-04-05 16:02:16 -04:00