1
1
mirror of https://github.com/github/semantic.git synced 2024-12-23 06:41:45 +03:00
Commit Graph

11688 Commits

Author SHA1 Message Date
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
Rob Rix
1f89f7f3ed Define an assignment term producing a node’s content. 2017-04-05 16:02:02 -04:00
Rob Rix
683f701811 Define a Semigroup instance for Assignment. 2017-04-05 16:01:42 -04:00
Rob Rix
432474b8c5 Add true/false to the grammar. 2017-04-05 16:00:43 -04:00
Rob Rix
0ca4263b43 Clarify the 📝 for assignment. 2017-04-05 14:54:58 -04:00
Rob Rix
63ed6036ed Derive Enum, Eq, Ord, & Show instances for the Ruby Grammar type. 2017-04-05 14:53:02 -04:00
Rob Rix
5a57c87a88 Add some more rules. 2017-04-05 14:49:58 -04:00
Rob Rix
6f3d17f937 Rename the syntax type. 2017-04-05 14:49:21 -04:00
Rob Rix
1c4b5b394e Rename the Rule type and constructors. 2017-04-05 14:49:00 -04:00
Rob Rix
91f85d3dfd Stub in assignment onto Ruby programs. 2017-04-05 14:26:55 -04:00
Rob Rix
c56ac0d0f9 Extend the Ruby syntax definition a little. 2017-04-05 14:01:36 -04:00
Rob Rix
5dd64723ac Move the Ruby type into its own module. 2017-04-05 14:00:47 -04:00
Rob Rix
28acaef678 Stub in a module for Ruby syntax. 2017-04-05 13:59:03 -04:00
Rob Rix
cf4f532bce Rename the literals; namespacing will suffice. 2017-04-05 13:46:00 -04:00
Rob Rix
2a8b8869ca Stub in a datatype for Ruby syntax. 2017-04-05 13:32:20 -04:00