Rob Rix
|
18d74a9d9c
|
Diff is AlgebraicHashable.
|
2015-10-01 09:54:56 -04:00 |
|
Rob Rix
|
0013475516
|
Terms of Hashable leaf type can be hashed.
|
2015-10-01 09:54:44 -04:00 |
|
Rob Rix
|
c698280fc2
|
Pass the hashing function for the Recur type in.
|
2015-10-01 09:53:30 -04:00 |
|
Rob Rix
|
1635b8ab8a
|
Info is AlgebraicHashable.
|
2015-10-01 09:46:02 -04:00 |
|
Rob Rix
|
cb5b7c0b33
|
Merge pull request #40 from github/syntactic-categorization
Syntactic categorization
|
2015-09-30 16:08:30 -04:00 |
|
Rob Rix
|
5dd80cb0ce
|
Diff is defined over Term<Info>.
This enables diffs to operate on categorized Terms.
|
2015-09-30 16:05:39 -04:00 |
|
Rob Rix
|
84eeba6111
|
Info has a property for its Categories.
|
2015-09-30 16:02:01 -04:00 |
|
Rob Rix
|
d29e14508a
|
Info has a Set of Categories.
|
2015-09-30 16:01:47 -04:00 |
|
Rob Rix
|
1ed5fc0e88
|
Categories are Hashable.
|
2015-09-30 16:00:13 -04:00 |
|
Rob Rix
|
282f56fb90
|
Categories have an accessor for their tag.
|
2015-09-30 16:00:03 -04:00 |
|
Rob Rix
|
5abbd36a80
|
Replace Location with Info.
|
2015-09-30 15:58:01 -04:00 |
|
Rob Rix
|
ddbe0943ef
|
Location is Equatable.
|
2015-09-30 15:46:21 -04:00 |
|
Rob Rix
|
66281a6674
|
Document Literal Locations.
|
2015-09-30 15:46:16 -04:00 |
|
Rob Rix
|
0efffe3e3d
|
Add source locations.
|
2015-09-30 15:29:56 -04:00 |
|
Rob Rix
|
459bad4dd6
|
Categories are equatable.
|
2015-09-30 15:29:40 -04:00 |
|
Rob Rix
|
f3122f1bae
|
Move JSON construction of Term into doubt-swift.
|
2015-09-30 15:08:19 -04:00 |
|
Rob Rix
|
03d4fcfc53
|
Add Category.
|
2015-09-30 15:03:47 -04:00 |
|
Rob Rix
|
d7a8c64806
|
Abbreviate the properties.
|
2015-09-30 15:03:42 -04:00 |
|
Rob Rix
|
82720340ef
|
Wrap with Term().
|
2015-09-30 15:03:37 -04:00 |
|
Rob Rix
|
d8c718130b
|
Lose an annotation.
|
2015-09-30 15:03:30 -04:00 |
|
Rob Rix
|
a6358b22d4
|
Remove CustomHashConvertible.
|
2015-09-30 15:02:31 -04:00 |
|
Rob Rix
|
2d0991b91f
|
Abstract Term over a type parameter A.
|
2015-09-30 14:42:58 -04:00 |
|
Rob Rix
|
a2b9f9ce17
|
Implement Syntax equality using a function which expresses the equality of the functor.
|
2015-09-30 14:42:44 -04:00 |
|
Rob Rix
|
92d844f416
|
Extract the exception-for-control-flow ErrorType to global scope.
|
2015-09-30 14:40:30 -04:00 |
|
Rob Rix
|
6ecf6fdd98
|
Merge pull request #39 from github/simpler-ast
Simpler AST
|
2015-09-30 12:43:43 -04:00 |
|
Rob Rix
|
88b677e1e0
|
Parameterize the type of Leaf.
|
2015-09-30 12:41:20 -04:00 |
|
Rob Rix
|
5529a502e3
|
Require Recur to be Hashable.
|
2015-09-30 12:40:49 -04:00 |
|
Rob Rix
|
de3ef64f48
|
Map using Hash.init.
|
2015-09-30 12:40:36 -04:00 |
|
Rob Rix
|
5fa07014a6
|
Replace all the other nodes with Branch.
|
2015-09-30 11:42:41 -04:00 |
|
Rob Rix
|
a0f562d25e
|
Leaves, not Literals.
|
2015-09-30 11:03:55 -04:00 |
|
Rob Rix
|
4712e1c2cc
|
Add CustomHashConvertible for non-Equatable objects that can be converted to Hashes.
|
2015-09-30 10:46:01 -04:00 |
|
Rob Rix
|
66b225fce3
|
Replace Case with a constructor.
|
2015-09-30 10:44:48 -04:00 |
|
Rob Rix
|
565800b1b0
|
Add a constructor for Int hashes.
|
2015-09-30 10:43:18 -04:00 |
|
Rob Rix
|
9841debe91
|
No longer need to disambiguate String.
|
2015-09-30 10:42:43 -04:00 |
|
Rob Rix
|
b581b8b71d
|
Rename String to Label.
|
2015-09-30 10:42:27 -04:00 |
|
Rob Rix
|
d9eb3f6a69
|
Don’t need to disambiguate Int now.
|
2015-09-30 10:40:45 -04:00 |
|
Rob Rix
|
0cdb09a964
|
Rename the Int case to Raw.
|
2015-09-30 10:40:28 -04:00 |
|
Rob Rix
|
66141c95af
|
Replace Literal/Variable with Leaf.
|
2015-09-30 10:36:25 -04:00 |
|
Rob Rix
|
1f253f4e12
|
Add a phantom type parameter to Syntax.
|
2015-09-30 10:31:48 -04:00 |
|
Rob Rix
|
308f81853d
|
Rename the Payload type to Recur.
|
2015-09-30 10:29:38 -04:00 |
|
Rob Rix
|
4348604e66
|
Remove the typealias.
|
2015-09-30 10:29:32 -04:00 |
|
Rob Rix
|
96ff73726f
|
Merge pull request #38 from github/algebraic-hashing
Algebraic hashing
|
2015-09-30 10:26:25 -04:00 |
|
Rob Rix
|
31d35c854b
|
Term is AlgebraicHashable.
|
2015-09-29 17:03:18 -04:00 |
|
Rob Rix
|
586def93cd
|
Syntax<A: AlgebraicHashable> implements hash .
|
2015-09-29 17:03:11 -04:00 |
|
Rob Rix
|
7925347d21
|
Debug print abstraction bodies correctly.
|
2015-09-29 17:02:57 -04:00 |
|
Rob Rix
|
1cf92c94d0
|
Conveniences for labelled/numbered enum cases.
|
2015-09-29 17:02:35 -04:00 |
|
Rob Rix
|
f1c2f4b9e0
|
Algebraic hashing of RawRepresentable types whose RawValue is [Algebraic]Hashable.
|
2015-09-29 17:02:01 -04:00 |
|
Rob Rix
|
b60df96019
|
Construction of Hash from Hashable/AlgebraicallyHashable values.
|
2015-09-29 17:01:38 -04:00 |
|
Rob Rix
|
e32bb2af29
|
Add a protocol for algebraically hashable types.
They’ll get `hashValue` for free.
|
2015-09-29 17:00:52 -04:00 |
|
Rob Rix
|
278bba4f82
|
Add an algebraic Hash type.
|
2015-09-29 17:00:26 -04:00 |
|