Emery Hemingway
272b6dfcb7
Idiomatic pattern constructor
2021-10-29 18:27:22 +02:00
Emery Hemingway
5fe1b7a70d
Test sort of works
2021-10-29 18:27:22 +02:00
Emery Hemingway
29b43eaced
Pattern constructors
2021-10-29 18:27:22 +02:00
Emery Hemingway
3b9bbdf0fe
Reduce methods to proc pointers
2021-10-29 18:27:22 +02:00
Emery Hemingway
8cf7beeb0d
Fix nil dereference in message
2021-10-28 17:41:28 +02:00
Emery Hemingway
3f552edde7
Rename sturdy module to capabilities
2021-10-27 18:54:20 +02:00
Emery Hemingway
77a9ea380f
Syndicate with caps
2021-10-26 13:09:54 +02:00
Emery Hemingway
8447822243
Move protocols to a submodule
...
The code generated from the protocols is commited here so the
submodule doesn't need to be checked out to build.
2021-10-06 11:58:43 +02:00
Emery Hemingway
3509573f55
Preserves submodule
2021-10-06 11:54:42 +02:00
Emery Hemingway
6cd5887b4c
DSL: rename "asserting" to "publish"
...
This should be more legible if there is less confusion with the
Nim "assert" builtin.
2021-09-22 14:39:30 +02:00
Emery Hemingway
2636fa8f0a
Add simple chat test
2021-09-21 19:10:13 +02:00
Emery Hemingway
b0c92ea5de
Make DSL blocks callable procedures
2021-09-21 16:39:57 +02:00
Emery Hemingway
62464a0cc1
Update Preserves submodule
2021-09-21 16:39:43 +02:00
Emery Hemingway
ed555776fb
isNil(Preserve) is now isFalse
2021-09-21 16:38:15 +02:00
Emery Hemingway
6b15fe98a1
HMAC: Accept strings or bytes for messages without a cast
2021-09-20 18:27:05 +02:00
Emery Hemingway
59e2367131
WiP! SturdyRef
2021-09-07 12:01:42 +02:00
Emery Hemingway
9a0b8caeb5
fixup hmacs
2021-09-07 12:01:28 +02:00
Emery Hemingway
cd309ceb7d
Add private HMAC-SHA256 implementation
2021-09-06 21:55:00 +02:00
Emery Hemingway
a23935b3c5
Add Tupfile for generating protocol code
2021-09-06 18:25:35 +02:00
Emery Hemingway
fbf48c441e
Add Preserves submodule
...
This allows the schema code generator to be developed and tested
simultaneously.
2021-09-06 18:24:33 +02:00
Emery Hemingway
7f7756ef59
Add 'src/syndicate/protocols/' from commit '0ff8c2c872538c35a199846e84eb5f33fbebc5a3'
...
git-subtree-dir: src/syndicate/protocols
git-subtree-mainline: 7a7a6f7e4e
git-subtree-split: 0ff8c2c872
2021-09-06 14:22:42 +02:00
Emery Hemingway
7a7a6f7e4e
Unlicense
2021-09-01 13:47:21 +02:00
Emery Hemingway
a5830a4a07
Parameterize Preserve type
2021-09-01 13:44:28 +02:00
Emery Hemingway
cfd863fbf9
Test schema code generator
2021-08-28 10:52:26 +02:00
Emery Hemingway
6fd02e74dd
DSL: rename assert to asserting
...
Too much of a clash with the assert builtin.
2021-08-28 10:51:32 +02:00
Emery Hemingway
2a09e61f2b
Adapt to non-throwing fromPreserve
...
Use the new fromPreserve proc that indicates failure with its
return value to test if a handler can process a pattern match.
2021-08-28 10:49:58 +02:00
Tony Garnock-Jones
0ff8c2c872
Stdio transport
2021-08-19 18:17:51 -04:00
Tony Garnock-Jones
c2de82a2b7
schemas/transportAddress.prs
2021-08-18 22:59:59 -04:00
Tony Garnock-Jones
9445a71b53
Use correct latest version of preserves-schemac
2021-08-11 16:05:36 -04:00
Tony Garnock-Jones
8cd601a777
Remove name field from DBind
2021-08-11 15:43:29 -04:00
Tony Garnock-Jones
0b2c7ecfe1
Rename RefAny -> Cap
2021-07-22 14:12:53 +02:00
Tony Garnock-Jones
be6b30bba6
Switch Ref -> RefAny
2021-07-22 13:43:14 +02:00
Tony Garnock-Jones
993cf78a38
DeBruijn-like binding in patterns
2021-07-12 21:10:19 +02:00
Emery Hemingway
4f7f7e7780
Add `withFacet` template
...
Simplifies the injection of `getCurrentFacet`.
2021-07-12 12:17:13 +02:00
Emery Hemingway
8c02bf807e
Rename sendMessage to send
2021-07-12 12:10:11 +02:00
Emery Hemingway
9b97f1135e
Use monotonic time for the timer driver
...
Use the arbitrary monotonic timer which supports higher resolution.
This avoids Epochalypse problems (even if we are going to be mostly
dead by 2038).
2021-07-09 17:45:44 +02:00
Emery Hemingway
6920c26183
Add timer driver
2021-07-09 17:08:19 +02:00
Emery Hemingway
6a4eb032ad
Simplify EndpointSpec type
2021-07-09 17:06:16 +02:00
Emery Hemingway
262a8d7452
Track external tasks that will drive dataspace
2021-07-09 17:06:16 +02:00
Emery Hemingway
3dfafd925d
Add react and during to DSL
2021-07-09 17:06:16 +02:00
Emery Hemingway
c85c809bef
Use % operator for constructing records from classes
2021-07-09 17:06:16 +02:00
Emery Hemingway
99fb0a9cff
Simplify event handling
2021-07-09 17:06:15 +02:00
Emery Hemingway
86b2dfbdab
Pass only a single preserves value to assert
2021-07-09 17:06:01 +02:00
Emery Hemingway
3de97c5cf1
macros: take multiple arguments at assert
...
The assertion record may have multiple fields, so take multiple
arguments.
2021-07-09 16:10:17 +02:00
Emery Hemingway
50afa0107f
macros: add onStart and onStop
...
The onStart and onStop macros will be called as actors start and
stop. This can be used to call `quit`, since the async dispatcher
will run empty and raise an error otherwise.
2021-07-09 16:10:17 +02:00
Emery Hemingway
300f0169bb
Move syndicate/macros module to syndicate
2021-07-09 16:10:17 +02:00
Emery Hemingway
f695092ae8
Fix lost handlers in skeleton index
2021-07-09 16:10:16 +02:00
Tony Garnock-Jones
f7c6e7d164
Specify embedded type for sturdy.prs
2021-07-03 09:00:58 +02:00
Tony Garnock-Jones
e7ddfdf311
EntityRef.Ref in dataspacePatterns
2021-07-02 16:51:21 +02:00
Tony Garnock-Jones
dab79020f4
Variations on protocol for internal and external use
2021-07-02 16:48:15 +02:00