Commit Graph

21 Commits

Author SHA1 Message Date
Tony Garnock-Jones 0bc775a89f First commit moving from (actor (react ...)) to (actor ...) 2016-08-24 17:35:38 +01:00
Tony Garnock-Jones 68ba2f74a6 Split dataspaces in to relay and mux sublayers.
This is a major change to the previous design, and also a change with
respect to the semantics in the ESOP 2016 paper. All the complexity of
echo-cancellation is stripped out of the core dataspace semantics, and
the relaying protocol is changed from one constructor, `at-meta`, to
two, `inbound` and `outbound`. The relay connecting a dataspace to its
container is now completely symmetric with the contained actors: it
initially asserts interest in what it is to relay, just like any other
actor would. Dataspaces no longer treat relaying specially.

This commit has updated all (I think) of the non-graphical examples. The
graphical code remains to be done in a following commit.
2016-07-30 14:49:05 -04:00
Tony Garnock-Jones 8dba9a66c6 Line reader for TCP 2016-07-25 21:31:12 -04:00
Tony Garnock-Jones 819ff13835 Expanders for events and assertion-patterns.
Introduced expanders for events (define-event-expander) and for
assertion-patterns (define-assertion-expander).

Introduced convenience syntax and utilities in web.rkt for working
with web requests.

Support nested bindings in assertion-patterns for message events
(only).
2016-07-23 14:57:26 -04:00
Tony Garnock-Jones 796acbeea2 Defaults for web-response-header 2016-07-23 11:40:18 -04:00
Tony Garnock-Jones b6e863fa79 Support for using struct-defaults in web.rkt, plus a simple default 2016-07-23 11:28:46 -04:00
Tony Garnock-Jones d36ccbb0c2 New web driver 2016-07-16 16:20:57 -04:00
Tony Garnock-Jones 0b06bcf1c4 Introduce syndicate module *activation*.
Make #lang syndicate module-begin gather boot actions into a
syndicate-main submodule, and for each such module, add a main
submodule that calls run-ground with the syndicate-main boot actions.

This lets us write syndicate *libraries* that comprise both
data-structures, functions, and Syndicate services.
2016-07-12 15:05:56 -04:00
Tony Garnock-Jones cd94df3cab Report non-network-failure exceptions more clearly 2016-06-06 10:36:00 -04:00
Tony Garnock-Jones f6ed330a0d UDP multicast support 2016-05-27 19:43:35 -04:00
Tony Garnock-Jones 4d905e9f3f Correct typo in documentation 2016-05-27 18:45:41 -04:00
Tony Garnock-Jones 81f9a0f0fe Split host and port in websocket-remote-client and broker-scope. 2016-05-15 06:56:29 -04:00
Tony Garnock-Jones c29ae059ff Make sure to advertise presence even during connection establishment, since otherwise the user actor may hang indefinitely. 2016-05-15 06:55:39 -04:00
Tony Garnock-Jones 0f1fabddfb Better logging of websocket connection failures. 2016-05-15 06:55:14 -04:00
Tony Garnock-Jones 931c54df6a It is expected that outbound connection supply should drop. 2016-05-15 06:53:02 -04:00
Tony Garnock-Jones 81e10632dd Expose Websocket request host/path to server-side 2016-05-12 12:18:43 -04:00
Tony Garnock-Jones a8821913a1 Publish websocket-peer-details for each connection 2016-05-12 10:46:02 -04:00
Tony Garnock-Jones 4de4a099b9 Fix bug with outbound websocket connections 2016-05-12 10:46:02 -04:00
Tony Garnock-Jones bbca582b98 Get the broker working.
Add support for encoding prefab structs as JSON objects.

Remove linkage & at-meta from patches inside broker dataspace. This is
ugly, and deserves to be revisited in future.

Fix a bug where using trie-prune-branch was incorrect, and
trie-subtract should have been used instead.

Factor out support/struct.rkt.
2016-05-10 00:25:50 -04:00
Tony Garnock-Jones 7fcfa9586b Rename "network" to "dataspace" throughout 2016-04-07 09:42:54 +02:00
Tony Garnock-Jones 9dee4e3b30 Alpha convert: prospect -> syndicate 2016-04-01 19:53:46 -04:00