From 08c4980025c025e6a676a84f10564bd4d94ca5f5 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Wed, 26 May 2021 14:37:49 +0200 Subject: [PATCH] Move the bulk of the existing implementation out of the way --- .../box-and-client.rkt | 0 .../chat-client.rkt | 0 .../chat-server-nested-dataspace.rkt | 0 .../chat-server.rkt | 0 .../echo.rkt | 0 .../filesystem.rkt | 0 .../gl-2d-basic.rkt | 0 .../gl-2d-clock-face.rkt | 0 .../gl-2d-many.rkt | 0 .../gl-2d-platformer.rkt | 0 .../gui/README.md | 0 .../gui/gui.rkt | 0 .../gui/hsv.rkt | 0 .../gui/layout/layout.rkt | 0 .../gui/layout/main.rkt | 0 .../gui/layout/sizing.rkt | 0 .../gui/oakura-beach-20081225.jpg | Bin .../gui/syndicate-gui-snapshot.png | Bin .../info.rkt | 0 .../ircd/Makefile | 0 .../ircd/channel.rkt | 0 .../ircd/config.rkt | 0 .../ircd/dynamic-main.rkt | 0 .../ircd/greeter.rkt | 0 .../ircd/ircd-config.rktd | 0 .../ircd/irssi-config | 0 .../ircd/main.rkt | 0 .../ircd/message.rkt | 0 .../ircd/protocol.rkt | 0 .../ircd/session.rkt | 0 .../netstack/Makefile | 0 .../netstack/README.md | 0 .../netstack/TODO.md | 0 .../netstack/arp.rkt | 0 .../netstack/checksum.rkt | 0 .../netstack/configuration.rkt | 0 .../netstack/demo-config.rkt | 0 .../netstack/dump-bytes.rkt | 0 .../netstack/ethernet.rkt | 0 .../netstack/fetchurl.rkt | 0 .../netstack/ip.rkt | 0 .../netstack/main.rkt | 0 .../netstack/port-allocator.rkt | 0 .../netstack/tcp.rkt | 0 .../netstack/udp.rkt | 0 ...autiful-grassland-wallpapers-1920x1080.jpg | Bin ...tlerobotsoundfactory__collect-point-02.wav | Bin ...tlerobotsoundfactory__collect-point-01.wav | Bin ...tlerobotsoundfactory__collect-point-00.wav | Bin ...erobotsoundfactory__climb-rope-loop-00.wav | Bin ..._littlerobotsoundfactory__explosion-02.wav | Bin ..._littlerobotsoundfactory__explosion-01.wav | Bin ..._littlerobotsoundfactory__explosion-00.wav | Bin ...309__littlerobotsoundfactory__craft-00.wav | Bin ..._littlerobotsoundfactory__explosion-04.wav | Bin ..._littlerobotsoundfactory__explosion-03.wav | Bin ...tlerobotsoundfactory__menu-navigate-03.wav | Bin ...0316__littlerobotsoundfactory__open-00.wav | Bin ...0317__littlerobotsoundfactory__jump-01.wav | Bin ...0318__littlerobotsoundfactory__jump-02.wav | Bin ...littlerobotsoundfactory__jingle-win-01.wav | Bin ...0320__littlerobotsoundfactory__jump-00.wav | Bin ...tlerobotsoundfactory__menu-navigate-01.wav | Bin ...tlerobotsoundfactory__menu-navigate-02.wav | Bin ...0323__littlerobotsoundfactory__jump-03.wav | Bin ...tlerobotsoundfactory__menu-navigate-00.wav | Bin ...70325__littlerobotsoundfactory__hit-02.wav | Bin ...70326__littlerobotsoundfactory__hit-01.wav | Bin ...70327__littlerobotsoundfactory__hit-00.wav | Bin ...littlerobotsoundfactory__hero-death-00.wav | Bin ...ittlerobotsoundfactory__jingle-lose-00.wav | Bin ...botsoundfactory__jingle-achievement-01.wav | Bin ...botsoundfactory__jingle-achievement-00.wav | Bin ...70332__littlerobotsoundfactory__hit-03.wav | Bin ...littlerobotsoundfactory__jingle-win-00.wav | Bin ...ittlerobotsoundfactory__jingle-lose-01.wav | Bin ...335__littlerobotsoundfactory__shoot-03.wav | Bin ...336__littlerobotsoundfactory__shoot-02.wav | Bin ...37__littlerobotsoundfactory__pickup-00.wav | Bin ...0338__littlerobotsoundfactory__open-01.wav | Bin ...39__littlerobotsoundfactory__pickup-02.wav | Bin ...40__littlerobotsoundfactory__pickup-01.wav | Bin ...41__littlerobotsoundfactory__pickup-04.wav | Bin ...42__littlerobotsoundfactory__pickup-03.wav | Bin ...343__littlerobotsoundfactory__shoot-01.wav | Bin ...344__littlerobotsoundfactory__shoot-00.wav | Bin .../private/sounds/_readme_and_license.txt | 0 .../santa.rkt | 0 .../server-chat-client.rkt | 0 .../simple-cross-layer.rkt | 0 .../sqlite.rkt | 0 .../stdin-echo.rkt | 0 .../time.rkt | 0 .../udp-echo.rkt | 0 .../udp-multicast.rkt | 0 .../web-core.rkt | 0 .../bin/syndicate-server-debug.rkt | 0 .../bin/syndicate-server.rkt | 0 {syndicate => OLD-syndicate}/dataspace.rkt | 0 {syndicate => OLD-syndicate}/distributed.rkt | 0 .../distributed/buffer.rkt | 0 .../distributed/client.rkt | 0 .../distributed/client/loopback.rkt | 0 .../distributed/client/tcp.rkt | 0 .../distributed/federation.rkt | 0 .../distributed/heartbeat.rkt | 0 .../distributed/internal-protocol.rkt | 0 .../distributed/main.rkt | 0 .../distributed/protocol.rkt | 0 .../distributed/server.rkt | 0 .../distributed/server/tcp.rkt | 0 .../distributed/server/websocket.rkt | 0 .../distributed/turn.rkt | 0 .../distributed/wire-protocol.rkt | 0 .../drivers/config.rkt | 0 .../drivers/external-event.rkt | 0 .../drivers/filesystem.rkt | 0 .../drivers/gl-2d.rkt | 0 .../drivers/gl-2d/affine.rkt | 0 .../drivers/gl-2d/texture.rkt | 0 .../drivers/sqlite.rkt | 0 {syndicate => OLD-syndicate}/drivers/tcp.rkt | 0 .../drivers/timer.rkt | 0 {syndicate => OLD-syndicate}/drivers/udp.rkt | 0 {syndicate => OLD-syndicate}/drivers/web.rkt | 0 .../event-expander.rkt | 0 .../functional-queue.rkt | 0 {syndicate => OLD-syndicate}/ground.rkt | 0 {syndicate => OLD-syndicate}/lang.rkt | 0 .../mc/mc-chat-client.rkt | 0 .../mc/udp-dataspace.rkt | 0 .../pattern-expander.rkt | 0 {syndicate => OLD-syndicate}/pattern.rkt | 0 .../protocol/credit.rkt | 0 .../protocol/instance.rkt | 0 {syndicate => OLD-syndicate}/reassert.rkt | 0 {syndicate => OLD-syndicate}/reflection.rkt | 0 {syndicate => OLD-syndicate}/relay.rkt | 0 {syndicate => OLD-syndicate}/reload.rkt | 0 {syndicate => OLD-syndicate}/skeleton.rkt | 114 +----------------- {syndicate => OLD-syndicate}/supervise.rkt | 0 .../support/bytes.rkt | 0 .../syntax-classes.rkt | 0 {syndicate => OLD-syndicate}/syntax.rkt | 0 {syndicate => OLD-syndicate}/term.rkt | 0 .../test-implementation.rkt | 0 .../test/core/abandon-actions-on-exn.rkt | 0 .../test/core/clean-adhoc-on-termination.rkt | 0 .../test/core/complex-pattern.rkt | 0 .../test/core/correct-retraction-on-exn.rkt | 0 .../test/core/death-during-startup.rkt | 0 .../test/core/death-during-turn.rkt | 0 .../test/core/double-cross-layer.rkt | 0 .../core/during-criterion-snapshotting.rkt | 0 .../test/core/nesting-confusion-2.rkt | 0 .../test/core/nesting-confusion.rkt | 0 .../test/core/partial-retraction.rkt | 0 .../test/core/pending-changes.rkt | 0 .../test/core/responsibility-transfer-1.rkt | 0 .../test/core/responsibility-transfer-2.rkt | 0 .../test/core/simple-addition.rkt | 0 .../test/core/simple-box-and-client.rkt | 0 .../test/core/simple-cross-layer.rkt | 0 OLD-syndicate/test/core/skeleton.rkt | 111 +++++++++++++++++ .../test/core/spawn-and-send.rkt | 0 .../test/core/state-machine.rkt | 0 .../test/core/supervise.rkt | 0 .../test/distributed/nesting-confusion.rkt | 0 .../distributed/observation-visibility.rkt | 0 .../test/pattern-test.rkt | 0 .../test/raw-dataspace.rkt | 0 .../test/speed/speed-box-and-client.rkt | 0 .../test/speed/speed-message-sending.rkt | 0 syndicate/assertions.rkt | 37 ------ syndicate/dataflow.rkt | 103 ---------------- syndicate/gensym.rkt | 15 +++ syndicate/info.rkt | 6 - syndicate/main.rkt | 22 ++-- syndicate/test/core/dataflow.rkt | 104 ++++++++++++++++ 179 files changed, 246 insertions(+), 266 deletions(-) rename {syndicate-examples => OLD-syndicate-examples}/box-and-client.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/chat-client.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/chat-server-nested-dataspace.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/chat-server.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/echo.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/filesystem.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/gl-2d-basic.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/gl-2d-clock-face.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/gl-2d-many.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/gl-2d-platformer.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/gui/README.md (100%) rename {syndicate-examples => OLD-syndicate-examples}/gui/gui.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/gui/hsv.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/gui/layout/layout.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/gui/layout/main.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/gui/layout/sizing.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/gui/oakura-beach-20081225.jpg (100%) rename {syndicate-examples => OLD-syndicate-examples}/gui/syndicate-gui-snapshot.png (100%) rename {syndicate-examples => OLD-syndicate-examples}/info.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/ircd/Makefile (100%) rename {syndicate-examples => OLD-syndicate-examples}/ircd/channel.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/ircd/config.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/ircd/dynamic-main.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/ircd/greeter.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/ircd/ircd-config.rktd (100%) rename {syndicate-examples => OLD-syndicate-examples}/ircd/irssi-config (100%) rename {syndicate-examples => OLD-syndicate-examples}/ircd/main.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/ircd/message.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/ircd/protocol.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/ircd/session.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/Makefile (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/README.md (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/TODO.md (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/arp.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/checksum.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/configuration.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/demo-config.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/dump-bytes.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/ethernet.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/fetchurl.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/ip.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/main.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/port-allocator.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/tcp.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/netstack/udp.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/beautiful-grassland-wallpapers-1920x1080.jpg (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270302__littlerobotsoundfactory__collect-point-02.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270303__littlerobotsoundfactory__collect-point-01.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270304__littlerobotsoundfactory__collect-point-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270305__littlerobotsoundfactory__climb-rope-loop-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270306__littlerobotsoundfactory__explosion-02.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270307__littlerobotsoundfactory__explosion-01.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270308__littlerobotsoundfactory__explosion-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270309__littlerobotsoundfactory__craft-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270310__littlerobotsoundfactory__explosion-04.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270311__littlerobotsoundfactory__explosion-03.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270315__littlerobotsoundfactory__menu-navigate-03.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270316__littlerobotsoundfactory__open-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270317__littlerobotsoundfactory__jump-01.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270318__littlerobotsoundfactory__jump-02.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270319__littlerobotsoundfactory__jingle-win-01.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270320__littlerobotsoundfactory__jump-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270321__littlerobotsoundfactory__menu-navigate-01.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270322__littlerobotsoundfactory__menu-navigate-02.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270323__littlerobotsoundfactory__jump-03.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270324__littlerobotsoundfactory__menu-navigate-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270325__littlerobotsoundfactory__hit-02.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270326__littlerobotsoundfactory__hit-01.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270327__littlerobotsoundfactory__hit-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270328__littlerobotsoundfactory__hero-death-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270329__littlerobotsoundfactory__jingle-lose-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270330__littlerobotsoundfactory__jingle-achievement-01.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270331__littlerobotsoundfactory__jingle-achievement-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270332__littlerobotsoundfactory__hit-03.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270333__littlerobotsoundfactory__jingle-win-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270334__littlerobotsoundfactory__jingle-lose-01.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270335__littlerobotsoundfactory__shoot-03.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270336__littlerobotsoundfactory__shoot-02.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270337__littlerobotsoundfactory__pickup-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270338__littlerobotsoundfactory__open-01.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270339__littlerobotsoundfactory__pickup-02.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270340__littlerobotsoundfactory__pickup-01.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270341__littlerobotsoundfactory__pickup-04.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270342__littlerobotsoundfactory__pickup-03.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270343__littlerobotsoundfactory__shoot-01.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/270344__littlerobotsoundfactory__shoot-00.wav (100%) rename {syndicate-examples => OLD-syndicate-examples}/private/sounds/_readme_and_license.txt (100%) rename {syndicate-examples => OLD-syndicate-examples}/santa.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/server-chat-client.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/simple-cross-layer.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/sqlite.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/stdin-echo.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/time.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/udp-echo.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/udp-multicast.rkt (100%) rename {syndicate-examples => OLD-syndicate-examples}/web-core.rkt (100%) rename {syndicate => OLD-syndicate}/bin/syndicate-server-debug.rkt (100%) rename {syndicate => OLD-syndicate}/bin/syndicate-server.rkt (100%) rename {syndicate => OLD-syndicate}/dataspace.rkt (100%) rename {syndicate => OLD-syndicate}/distributed.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/buffer.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/client.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/client/loopback.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/client/tcp.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/federation.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/heartbeat.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/internal-protocol.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/main.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/protocol.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/server.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/server/tcp.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/server/websocket.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/turn.rkt (100%) rename {syndicate => OLD-syndicate}/distributed/wire-protocol.rkt (100%) rename {syndicate => OLD-syndicate}/drivers/config.rkt (100%) rename {syndicate => OLD-syndicate}/drivers/external-event.rkt (100%) rename {syndicate => OLD-syndicate}/drivers/filesystem.rkt (100%) rename {syndicate => OLD-syndicate}/drivers/gl-2d.rkt (100%) rename {syndicate => OLD-syndicate}/drivers/gl-2d/affine.rkt (100%) rename {syndicate => OLD-syndicate}/drivers/gl-2d/texture.rkt (100%) rename {syndicate => OLD-syndicate}/drivers/sqlite.rkt (100%) rename {syndicate => OLD-syndicate}/drivers/tcp.rkt (100%) rename {syndicate => OLD-syndicate}/drivers/timer.rkt (100%) rename {syndicate => OLD-syndicate}/drivers/udp.rkt (100%) rename {syndicate => OLD-syndicate}/drivers/web.rkt (100%) rename {syndicate => OLD-syndicate}/event-expander.rkt (100%) rename {syndicate => OLD-syndicate}/functional-queue.rkt (100%) rename {syndicate => OLD-syndicate}/ground.rkt (100%) rename {syndicate => OLD-syndicate}/lang.rkt (100%) rename {syndicate => OLD-syndicate}/mc/mc-chat-client.rkt (100%) rename {syndicate => OLD-syndicate}/mc/udp-dataspace.rkt (100%) rename {syndicate => OLD-syndicate}/pattern-expander.rkt (100%) rename {syndicate => OLD-syndicate}/pattern.rkt (100%) rename {syndicate => OLD-syndicate}/protocol/credit.rkt (100%) rename {syndicate => OLD-syndicate}/protocol/instance.rkt (100%) rename {syndicate => OLD-syndicate}/reassert.rkt (100%) rename {syndicate => OLD-syndicate}/reflection.rkt (100%) rename {syndicate => OLD-syndicate}/relay.rkt (100%) rename {syndicate => OLD-syndicate}/reload.rkt (100%) rename {syndicate => OLD-syndicate}/skeleton.rkt (78%) rename {syndicate => OLD-syndicate}/supervise.rkt (100%) rename {syndicate => OLD-syndicate}/support/bytes.rkt (100%) rename {syndicate => OLD-syndicate}/syntax-classes.rkt (100%) rename {syndicate => OLD-syndicate}/syntax.rkt (100%) rename {syndicate => OLD-syndicate}/term.rkt (100%) rename {syndicate => OLD-syndicate}/test-implementation.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/abandon-actions-on-exn.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/clean-adhoc-on-termination.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/complex-pattern.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/correct-retraction-on-exn.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/death-during-startup.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/death-during-turn.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/double-cross-layer.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/during-criterion-snapshotting.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/nesting-confusion-2.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/nesting-confusion.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/partial-retraction.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/pending-changes.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/responsibility-transfer-1.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/responsibility-transfer-2.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/simple-addition.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/simple-box-and-client.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/simple-cross-layer.rkt (100%) create mode 100644 OLD-syndicate/test/core/skeleton.rkt rename {syndicate => OLD-syndicate}/test/core/spawn-and-send.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/state-machine.rkt (100%) rename {syndicate => OLD-syndicate}/test/core/supervise.rkt (100%) rename {syndicate => OLD-syndicate}/test/distributed/nesting-confusion.rkt (100%) rename {syndicate => OLD-syndicate}/test/distributed/observation-visibility.rkt (100%) rename {syndicate => OLD-syndicate}/test/pattern-test.rkt (100%) rename {syndicate => OLD-syndicate}/test/raw-dataspace.rkt (100%) rename {syndicate => OLD-syndicate}/test/speed/speed-box-and-client.rkt (100%) rename {syndicate => OLD-syndicate}/test/speed/speed-message-sending.rkt (100%) delete mode 100644 syndicate/assertions.rkt create mode 100644 syndicate/gensym.rkt create mode 100644 syndicate/test/core/dataflow.rkt diff --git a/syndicate-examples/box-and-client.rkt b/OLD-syndicate-examples/box-and-client.rkt similarity index 100% rename from syndicate-examples/box-and-client.rkt rename to OLD-syndicate-examples/box-and-client.rkt diff --git a/syndicate-examples/chat-client.rkt b/OLD-syndicate-examples/chat-client.rkt similarity index 100% rename from syndicate-examples/chat-client.rkt rename to OLD-syndicate-examples/chat-client.rkt diff --git a/syndicate-examples/chat-server-nested-dataspace.rkt b/OLD-syndicate-examples/chat-server-nested-dataspace.rkt similarity index 100% rename from syndicate-examples/chat-server-nested-dataspace.rkt rename to OLD-syndicate-examples/chat-server-nested-dataspace.rkt diff --git a/syndicate-examples/chat-server.rkt b/OLD-syndicate-examples/chat-server.rkt similarity index 100% rename from syndicate-examples/chat-server.rkt rename to OLD-syndicate-examples/chat-server.rkt diff --git a/syndicate-examples/echo.rkt b/OLD-syndicate-examples/echo.rkt similarity index 100% rename from syndicate-examples/echo.rkt rename to OLD-syndicate-examples/echo.rkt diff --git a/syndicate-examples/filesystem.rkt b/OLD-syndicate-examples/filesystem.rkt similarity index 100% rename from syndicate-examples/filesystem.rkt rename to OLD-syndicate-examples/filesystem.rkt diff --git a/syndicate-examples/gl-2d-basic.rkt b/OLD-syndicate-examples/gl-2d-basic.rkt similarity index 100% rename from syndicate-examples/gl-2d-basic.rkt rename to OLD-syndicate-examples/gl-2d-basic.rkt diff --git a/syndicate-examples/gl-2d-clock-face.rkt b/OLD-syndicate-examples/gl-2d-clock-face.rkt similarity index 100% rename from syndicate-examples/gl-2d-clock-face.rkt rename to OLD-syndicate-examples/gl-2d-clock-face.rkt diff --git a/syndicate-examples/gl-2d-many.rkt b/OLD-syndicate-examples/gl-2d-many.rkt similarity index 100% rename from syndicate-examples/gl-2d-many.rkt rename to OLD-syndicate-examples/gl-2d-many.rkt diff --git a/syndicate-examples/gl-2d-platformer.rkt b/OLD-syndicate-examples/gl-2d-platformer.rkt similarity index 100% rename from syndicate-examples/gl-2d-platformer.rkt rename to OLD-syndicate-examples/gl-2d-platformer.rkt diff --git a/syndicate-examples/gui/README.md b/OLD-syndicate-examples/gui/README.md similarity index 100% rename from syndicate-examples/gui/README.md rename to OLD-syndicate-examples/gui/README.md diff --git a/syndicate-examples/gui/gui.rkt b/OLD-syndicate-examples/gui/gui.rkt similarity index 100% rename from syndicate-examples/gui/gui.rkt rename to OLD-syndicate-examples/gui/gui.rkt diff --git a/syndicate-examples/gui/hsv.rkt b/OLD-syndicate-examples/gui/hsv.rkt similarity index 100% rename from syndicate-examples/gui/hsv.rkt rename to OLD-syndicate-examples/gui/hsv.rkt diff --git a/syndicate-examples/gui/layout/layout.rkt b/OLD-syndicate-examples/gui/layout/layout.rkt similarity index 100% rename from syndicate-examples/gui/layout/layout.rkt rename to OLD-syndicate-examples/gui/layout/layout.rkt diff --git a/syndicate-examples/gui/layout/main.rkt b/OLD-syndicate-examples/gui/layout/main.rkt similarity index 100% rename from syndicate-examples/gui/layout/main.rkt rename to OLD-syndicate-examples/gui/layout/main.rkt diff --git a/syndicate-examples/gui/layout/sizing.rkt b/OLD-syndicate-examples/gui/layout/sizing.rkt similarity index 100% rename from syndicate-examples/gui/layout/sizing.rkt rename to OLD-syndicate-examples/gui/layout/sizing.rkt diff --git a/syndicate-examples/gui/oakura-beach-20081225.jpg b/OLD-syndicate-examples/gui/oakura-beach-20081225.jpg similarity index 100% rename from syndicate-examples/gui/oakura-beach-20081225.jpg rename to OLD-syndicate-examples/gui/oakura-beach-20081225.jpg diff --git a/syndicate-examples/gui/syndicate-gui-snapshot.png b/OLD-syndicate-examples/gui/syndicate-gui-snapshot.png similarity index 100% rename from syndicate-examples/gui/syndicate-gui-snapshot.png rename to OLD-syndicate-examples/gui/syndicate-gui-snapshot.png diff --git a/syndicate-examples/info.rkt b/OLD-syndicate-examples/info.rkt similarity index 100% rename from syndicate-examples/info.rkt rename to OLD-syndicate-examples/info.rkt diff --git a/syndicate-examples/ircd/Makefile b/OLD-syndicate-examples/ircd/Makefile similarity index 100% rename from syndicate-examples/ircd/Makefile rename to OLD-syndicate-examples/ircd/Makefile diff --git a/syndicate-examples/ircd/channel.rkt b/OLD-syndicate-examples/ircd/channel.rkt similarity index 100% rename from syndicate-examples/ircd/channel.rkt rename to OLD-syndicate-examples/ircd/channel.rkt diff --git a/syndicate-examples/ircd/config.rkt b/OLD-syndicate-examples/ircd/config.rkt similarity index 100% rename from syndicate-examples/ircd/config.rkt rename to OLD-syndicate-examples/ircd/config.rkt diff --git a/syndicate-examples/ircd/dynamic-main.rkt b/OLD-syndicate-examples/ircd/dynamic-main.rkt similarity index 100% rename from syndicate-examples/ircd/dynamic-main.rkt rename to OLD-syndicate-examples/ircd/dynamic-main.rkt diff --git a/syndicate-examples/ircd/greeter.rkt b/OLD-syndicate-examples/ircd/greeter.rkt similarity index 100% rename from syndicate-examples/ircd/greeter.rkt rename to OLD-syndicate-examples/ircd/greeter.rkt diff --git a/syndicate-examples/ircd/ircd-config.rktd b/OLD-syndicate-examples/ircd/ircd-config.rktd similarity index 100% rename from syndicate-examples/ircd/ircd-config.rktd rename to OLD-syndicate-examples/ircd/ircd-config.rktd diff --git a/syndicate-examples/ircd/irssi-config b/OLD-syndicate-examples/ircd/irssi-config similarity index 100% rename from syndicate-examples/ircd/irssi-config rename to OLD-syndicate-examples/ircd/irssi-config diff --git a/syndicate-examples/ircd/main.rkt b/OLD-syndicate-examples/ircd/main.rkt similarity index 100% rename from syndicate-examples/ircd/main.rkt rename to OLD-syndicate-examples/ircd/main.rkt diff --git a/syndicate-examples/ircd/message.rkt b/OLD-syndicate-examples/ircd/message.rkt similarity index 100% rename from syndicate-examples/ircd/message.rkt rename to OLD-syndicate-examples/ircd/message.rkt diff --git a/syndicate-examples/ircd/protocol.rkt b/OLD-syndicate-examples/ircd/protocol.rkt similarity index 100% rename from syndicate-examples/ircd/protocol.rkt rename to OLD-syndicate-examples/ircd/protocol.rkt diff --git a/syndicate-examples/ircd/session.rkt b/OLD-syndicate-examples/ircd/session.rkt similarity index 100% rename from syndicate-examples/ircd/session.rkt rename to OLD-syndicate-examples/ircd/session.rkt diff --git a/syndicate-examples/netstack/Makefile b/OLD-syndicate-examples/netstack/Makefile similarity index 100% rename from syndicate-examples/netstack/Makefile rename to OLD-syndicate-examples/netstack/Makefile diff --git a/syndicate-examples/netstack/README.md b/OLD-syndicate-examples/netstack/README.md similarity index 100% rename from syndicate-examples/netstack/README.md rename to OLD-syndicate-examples/netstack/README.md diff --git a/syndicate-examples/netstack/TODO.md b/OLD-syndicate-examples/netstack/TODO.md similarity index 100% rename from syndicate-examples/netstack/TODO.md rename to OLD-syndicate-examples/netstack/TODO.md diff --git a/syndicate-examples/netstack/arp.rkt b/OLD-syndicate-examples/netstack/arp.rkt similarity index 100% rename from syndicate-examples/netstack/arp.rkt rename to OLD-syndicate-examples/netstack/arp.rkt diff --git a/syndicate-examples/netstack/checksum.rkt b/OLD-syndicate-examples/netstack/checksum.rkt similarity index 100% rename from syndicate-examples/netstack/checksum.rkt rename to OLD-syndicate-examples/netstack/checksum.rkt diff --git a/syndicate-examples/netstack/configuration.rkt b/OLD-syndicate-examples/netstack/configuration.rkt similarity index 100% rename from syndicate-examples/netstack/configuration.rkt rename to OLD-syndicate-examples/netstack/configuration.rkt diff --git a/syndicate-examples/netstack/demo-config.rkt b/OLD-syndicate-examples/netstack/demo-config.rkt similarity index 100% rename from syndicate-examples/netstack/demo-config.rkt rename to OLD-syndicate-examples/netstack/demo-config.rkt diff --git a/syndicate-examples/netstack/dump-bytes.rkt b/OLD-syndicate-examples/netstack/dump-bytes.rkt similarity index 100% rename from syndicate-examples/netstack/dump-bytes.rkt rename to OLD-syndicate-examples/netstack/dump-bytes.rkt diff --git a/syndicate-examples/netstack/ethernet.rkt b/OLD-syndicate-examples/netstack/ethernet.rkt similarity index 100% rename from syndicate-examples/netstack/ethernet.rkt rename to OLD-syndicate-examples/netstack/ethernet.rkt diff --git a/syndicate-examples/netstack/fetchurl.rkt b/OLD-syndicate-examples/netstack/fetchurl.rkt similarity index 100% rename from syndicate-examples/netstack/fetchurl.rkt rename to OLD-syndicate-examples/netstack/fetchurl.rkt diff --git a/syndicate-examples/netstack/ip.rkt b/OLD-syndicate-examples/netstack/ip.rkt similarity index 100% rename from syndicate-examples/netstack/ip.rkt rename to OLD-syndicate-examples/netstack/ip.rkt diff --git a/syndicate-examples/netstack/main.rkt b/OLD-syndicate-examples/netstack/main.rkt similarity index 100% rename from syndicate-examples/netstack/main.rkt rename to OLD-syndicate-examples/netstack/main.rkt diff --git a/syndicate-examples/netstack/port-allocator.rkt b/OLD-syndicate-examples/netstack/port-allocator.rkt similarity index 100% rename from syndicate-examples/netstack/port-allocator.rkt rename to OLD-syndicate-examples/netstack/port-allocator.rkt diff --git a/syndicate-examples/netstack/tcp.rkt b/OLD-syndicate-examples/netstack/tcp.rkt similarity index 100% rename from syndicate-examples/netstack/tcp.rkt rename to OLD-syndicate-examples/netstack/tcp.rkt diff --git a/syndicate-examples/netstack/udp.rkt b/OLD-syndicate-examples/netstack/udp.rkt similarity index 100% rename from syndicate-examples/netstack/udp.rkt rename to OLD-syndicate-examples/netstack/udp.rkt diff --git a/syndicate-examples/private/beautiful-grassland-wallpapers-1920x1080.jpg b/OLD-syndicate-examples/private/beautiful-grassland-wallpapers-1920x1080.jpg similarity index 100% rename from syndicate-examples/private/beautiful-grassland-wallpapers-1920x1080.jpg rename to OLD-syndicate-examples/private/beautiful-grassland-wallpapers-1920x1080.jpg diff --git a/syndicate-examples/private/sounds/270302__littlerobotsoundfactory__collect-point-02.wav b/OLD-syndicate-examples/private/sounds/270302__littlerobotsoundfactory__collect-point-02.wav similarity index 100% rename from syndicate-examples/private/sounds/270302__littlerobotsoundfactory__collect-point-02.wav rename to OLD-syndicate-examples/private/sounds/270302__littlerobotsoundfactory__collect-point-02.wav diff --git a/syndicate-examples/private/sounds/270303__littlerobotsoundfactory__collect-point-01.wav b/OLD-syndicate-examples/private/sounds/270303__littlerobotsoundfactory__collect-point-01.wav similarity index 100% rename from syndicate-examples/private/sounds/270303__littlerobotsoundfactory__collect-point-01.wav rename to OLD-syndicate-examples/private/sounds/270303__littlerobotsoundfactory__collect-point-01.wav diff --git a/syndicate-examples/private/sounds/270304__littlerobotsoundfactory__collect-point-00.wav b/OLD-syndicate-examples/private/sounds/270304__littlerobotsoundfactory__collect-point-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270304__littlerobotsoundfactory__collect-point-00.wav rename to OLD-syndicate-examples/private/sounds/270304__littlerobotsoundfactory__collect-point-00.wav diff --git a/syndicate-examples/private/sounds/270305__littlerobotsoundfactory__climb-rope-loop-00.wav b/OLD-syndicate-examples/private/sounds/270305__littlerobotsoundfactory__climb-rope-loop-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270305__littlerobotsoundfactory__climb-rope-loop-00.wav rename to OLD-syndicate-examples/private/sounds/270305__littlerobotsoundfactory__climb-rope-loop-00.wav diff --git a/syndicate-examples/private/sounds/270306__littlerobotsoundfactory__explosion-02.wav b/OLD-syndicate-examples/private/sounds/270306__littlerobotsoundfactory__explosion-02.wav similarity index 100% rename from syndicate-examples/private/sounds/270306__littlerobotsoundfactory__explosion-02.wav rename to OLD-syndicate-examples/private/sounds/270306__littlerobotsoundfactory__explosion-02.wav diff --git a/syndicate-examples/private/sounds/270307__littlerobotsoundfactory__explosion-01.wav b/OLD-syndicate-examples/private/sounds/270307__littlerobotsoundfactory__explosion-01.wav similarity index 100% rename from syndicate-examples/private/sounds/270307__littlerobotsoundfactory__explosion-01.wav rename to OLD-syndicate-examples/private/sounds/270307__littlerobotsoundfactory__explosion-01.wav diff --git a/syndicate-examples/private/sounds/270308__littlerobotsoundfactory__explosion-00.wav b/OLD-syndicate-examples/private/sounds/270308__littlerobotsoundfactory__explosion-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270308__littlerobotsoundfactory__explosion-00.wav rename to OLD-syndicate-examples/private/sounds/270308__littlerobotsoundfactory__explosion-00.wav diff --git a/syndicate-examples/private/sounds/270309__littlerobotsoundfactory__craft-00.wav b/OLD-syndicate-examples/private/sounds/270309__littlerobotsoundfactory__craft-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270309__littlerobotsoundfactory__craft-00.wav rename to OLD-syndicate-examples/private/sounds/270309__littlerobotsoundfactory__craft-00.wav diff --git a/syndicate-examples/private/sounds/270310__littlerobotsoundfactory__explosion-04.wav b/OLD-syndicate-examples/private/sounds/270310__littlerobotsoundfactory__explosion-04.wav similarity index 100% rename from syndicate-examples/private/sounds/270310__littlerobotsoundfactory__explosion-04.wav rename to OLD-syndicate-examples/private/sounds/270310__littlerobotsoundfactory__explosion-04.wav diff --git a/syndicate-examples/private/sounds/270311__littlerobotsoundfactory__explosion-03.wav b/OLD-syndicate-examples/private/sounds/270311__littlerobotsoundfactory__explosion-03.wav similarity index 100% rename from syndicate-examples/private/sounds/270311__littlerobotsoundfactory__explosion-03.wav rename to OLD-syndicate-examples/private/sounds/270311__littlerobotsoundfactory__explosion-03.wav diff --git a/syndicate-examples/private/sounds/270315__littlerobotsoundfactory__menu-navigate-03.wav b/OLD-syndicate-examples/private/sounds/270315__littlerobotsoundfactory__menu-navigate-03.wav similarity index 100% rename from syndicate-examples/private/sounds/270315__littlerobotsoundfactory__menu-navigate-03.wav rename to OLD-syndicate-examples/private/sounds/270315__littlerobotsoundfactory__menu-navigate-03.wav diff --git a/syndicate-examples/private/sounds/270316__littlerobotsoundfactory__open-00.wav b/OLD-syndicate-examples/private/sounds/270316__littlerobotsoundfactory__open-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270316__littlerobotsoundfactory__open-00.wav rename to OLD-syndicate-examples/private/sounds/270316__littlerobotsoundfactory__open-00.wav diff --git a/syndicate-examples/private/sounds/270317__littlerobotsoundfactory__jump-01.wav b/OLD-syndicate-examples/private/sounds/270317__littlerobotsoundfactory__jump-01.wav similarity index 100% rename from syndicate-examples/private/sounds/270317__littlerobotsoundfactory__jump-01.wav rename to OLD-syndicate-examples/private/sounds/270317__littlerobotsoundfactory__jump-01.wav diff --git a/syndicate-examples/private/sounds/270318__littlerobotsoundfactory__jump-02.wav b/OLD-syndicate-examples/private/sounds/270318__littlerobotsoundfactory__jump-02.wav similarity index 100% rename from syndicate-examples/private/sounds/270318__littlerobotsoundfactory__jump-02.wav rename to OLD-syndicate-examples/private/sounds/270318__littlerobotsoundfactory__jump-02.wav diff --git a/syndicate-examples/private/sounds/270319__littlerobotsoundfactory__jingle-win-01.wav b/OLD-syndicate-examples/private/sounds/270319__littlerobotsoundfactory__jingle-win-01.wav similarity index 100% rename from syndicate-examples/private/sounds/270319__littlerobotsoundfactory__jingle-win-01.wav rename to OLD-syndicate-examples/private/sounds/270319__littlerobotsoundfactory__jingle-win-01.wav diff --git a/syndicate-examples/private/sounds/270320__littlerobotsoundfactory__jump-00.wav b/OLD-syndicate-examples/private/sounds/270320__littlerobotsoundfactory__jump-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270320__littlerobotsoundfactory__jump-00.wav rename to OLD-syndicate-examples/private/sounds/270320__littlerobotsoundfactory__jump-00.wav diff --git a/syndicate-examples/private/sounds/270321__littlerobotsoundfactory__menu-navigate-01.wav b/OLD-syndicate-examples/private/sounds/270321__littlerobotsoundfactory__menu-navigate-01.wav similarity index 100% rename from syndicate-examples/private/sounds/270321__littlerobotsoundfactory__menu-navigate-01.wav rename to OLD-syndicate-examples/private/sounds/270321__littlerobotsoundfactory__menu-navigate-01.wav diff --git a/syndicate-examples/private/sounds/270322__littlerobotsoundfactory__menu-navigate-02.wav b/OLD-syndicate-examples/private/sounds/270322__littlerobotsoundfactory__menu-navigate-02.wav similarity index 100% rename from syndicate-examples/private/sounds/270322__littlerobotsoundfactory__menu-navigate-02.wav rename to OLD-syndicate-examples/private/sounds/270322__littlerobotsoundfactory__menu-navigate-02.wav diff --git a/syndicate-examples/private/sounds/270323__littlerobotsoundfactory__jump-03.wav b/OLD-syndicate-examples/private/sounds/270323__littlerobotsoundfactory__jump-03.wav similarity index 100% rename from syndicate-examples/private/sounds/270323__littlerobotsoundfactory__jump-03.wav rename to OLD-syndicate-examples/private/sounds/270323__littlerobotsoundfactory__jump-03.wav diff --git a/syndicate-examples/private/sounds/270324__littlerobotsoundfactory__menu-navigate-00.wav b/OLD-syndicate-examples/private/sounds/270324__littlerobotsoundfactory__menu-navigate-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270324__littlerobotsoundfactory__menu-navigate-00.wav rename to OLD-syndicate-examples/private/sounds/270324__littlerobotsoundfactory__menu-navigate-00.wav diff --git a/syndicate-examples/private/sounds/270325__littlerobotsoundfactory__hit-02.wav b/OLD-syndicate-examples/private/sounds/270325__littlerobotsoundfactory__hit-02.wav similarity index 100% rename from syndicate-examples/private/sounds/270325__littlerobotsoundfactory__hit-02.wav rename to OLD-syndicate-examples/private/sounds/270325__littlerobotsoundfactory__hit-02.wav diff --git a/syndicate-examples/private/sounds/270326__littlerobotsoundfactory__hit-01.wav b/OLD-syndicate-examples/private/sounds/270326__littlerobotsoundfactory__hit-01.wav similarity index 100% rename from syndicate-examples/private/sounds/270326__littlerobotsoundfactory__hit-01.wav rename to OLD-syndicate-examples/private/sounds/270326__littlerobotsoundfactory__hit-01.wav diff --git a/syndicate-examples/private/sounds/270327__littlerobotsoundfactory__hit-00.wav b/OLD-syndicate-examples/private/sounds/270327__littlerobotsoundfactory__hit-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270327__littlerobotsoundfactory__hit-00.wav rename to OLD-syndicate-examples/private/sounds/270327__littlerobotsoundfactory__hit-00.wav diff --git a/syndicate-examples/private/sounds/270328__littlerobotsoundfactory__hero-death-00.wav b/OLD-syndicate-examples/private/sounds/270328__littlerobotsoundfactory__hero-death-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270328__littlerobotsoundfactory__hero-death-00.wav rename to OLD-syndicate-examples/private/sounds/270328__littlerobotsoundfactory__hero-death-00.wav diff --git a/syndicate-examples/private/sounds/270329__littlerobotsoundfactory__jingle-lose-00.wav b/OLD-syndicate-examples/private/sounds/270329__littlerobotsoundfactory__jingle-lose-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270329__littlerobotsoundfactory__jingle-lose-00.wav rename to OLD-syndicate-examples/private/sounds/270329__littlerobotsoundfactory__jingle-lose-00.wav diff --git a/syndicate-examples/private/sounds/270330__littlerobotsoundfactory__jingle-achievement-01.wav b/OLD-syndicate-examples/private/sounds/270330__littlerobotsoundfactory__jingle-achievement-01.wav similarity index 100% rename from syndicate-examples/private/sounds/270330__littlerobotsoundfactory__jingle-achievement-01.wav rename to OLD-syndicate-examples/private/sounds/270330__littlerobotsoundfactory__jingle-achievement-01.wav diff --git a/syndicate-examples/private/sounds/270331__littlerobotsoundfactory__jingle-achievement-00.wav b/OLD-syndicate-examples/private/sounds/270331__littlerobotsoundfactory__jingle-achievement-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270331__littlerobotsoundfactory__jingle-achievement-00.wav rename to OLD-syndicate-examples/private/sounds/270331__littlerobotsoundfactory__jingle-achievement-00.wav diff --git a/syndicate-examples/private/sounds/270332__littlerobotsoundfactory__hit-03.wav b/OLD-syndicate-examples/private/sounds/270332__littlerobotsoundfactory__hit-03.wav similarity index 100% rename from syndicate-examples/private/sounds/270332__littlerobotsoundfactory__hit-03.wav rename to OLD-syndicate-examples/private/sounds/270332__littlerobotsoundfactory__hit-03.wav diff --git a/syndicate-examples/private/sounds/270333__littlerobotsoundfactory__jingle-win-00.wav b/OLD-syndicate-examples/private/sounds/270333__littlerobotsoundfactory__jingle-win-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270333__littlerobotsoundfactory__jingle-win-00.wav rename to OLD-syndicate-examples/private/sounds/270333__littlerobotsoundfactory__jingle-win-00.wav diff --git a/syndicate-examples/private/sounds/270334__littlerobotsoundfactory__jingle-lose-01.wav b/OLD-syndicate-examples/private/sounds/270334__littlerobotsoundfactory__jingle-lose-01.wav similarity index 100% rename from syndicate-examples/private/sounds/270334__littlerobotsoundfactory__jingle-lose-01.wav rename to OLD-syndicate-examples/private/sounds/270334__littlerobotsoundfactory__jingle-lose-01.wav diff --git a/syndicate-examples/private/sounds/270335__littlerobotsoundfactory__shoot-03.wav b/OLD-syndicate-examples/private/sounds/270335__littlerobotsoundfactory__shoot-03.wav similarity index 100% rename from syndicate-examples/private/sounds/270335__littlerobotsoundfactory__shoot-03.wav rename to OLD-syndicate-examples/private/sounds/270335__littlerobotsoundfactory__shoot-03.wav diff --git a/syndicate-examples/private/sounds/270336__littlerobotsoundfactory__shoot-02.wav b/OLD-syndicate-examples/private/sounds/270336__littlerobotsoundfactory__shoot-02.wav similarity index 100% rename from syndicate-examples/private/sounds/270336__littlerobotsoundfactory__shoot-02.wav rename to OLD-syndicate-examples/private/sounds/270336__littlerobotsoundfactory__shoot-02.wav diff --git a/syndicate-examples/private/sounds/270337__littlerobotsoundfactory__pickup-00.wav b/OLD-syndicate-examples/private/sounds/270337__littlerobotsoundfactory__pickup-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270337__littlerobotsoundfactory__pickup-00.wav rename to OLD-syndicate-examples/private/sounds/270337__littlerobotsoundfactory__pickup-00.wav diff --git a/syndicate-examples/private/sounds/270338__littlerobotsoundfactory__open-01.wav b/OLD-syndicate-examples/private/sounds/270338__littlerobotsoundfactory__open-01.wav similarity index 100% rename from syndicate-examples/private/sounds/270338__littlerobotsoundfactory__open-01.wav rename to OLD-syndicate-examples/private/sounds/270338__littlerobotsoundfactory__open-01.wav diff --git a/syndicate-examples/private/sounds/270339__littlerobotsoundfactory__pickup-02.wav b/OLD-syndicate-examples/private/sounds/270339__littlerobotsoundfactory__pickup-02.wav similarity index 100% rename from syndicate-examples/private/sounds/270339__littlerobotsoundfactory__pickup-02.wav rename to OLD-syndicate-examples/private/sounds/270339__littlerobotsoundfactory__pickup-02.wav diff --git a/syndicate-examples/private/sounds/270340__littlerobotsoundfactory__pickup-01.wav b/OLD-syndicate-examples/private/sounds/270340__littlerobotsoundfactory__pickup-01.wav similarity index 100% rename from syndicate-examples/private/sounds/270340__littlerobotsoundfactory__pickup-01.wav rename to OLD-syndicate-examples/private/sounds/270340__littlerobotsoundfactory__pickup-01.wav diff --git a/syndicate-examples/private/sounds/270341__littlerobotsoundfactory__pickup-04.wav b/OLD-syndicate-examples/private/sounds/270341__littlerobotsoundfactory__pickup-04.wav similarity index 100% rename from syndicate-examples/private/sounds/270341__littlerobotsoundfactory__pickup-04.wav rename to OLD-syndicate-examples/private/sounds/270341__littlerobotsoundfactory__pickup-04.wav diff --git a/syndicate-examples/private/sounds/270342__littlerobotsoundfactory__pickup-03.wav b/OLD-syndicate-examples/private/sounds/270342__littlerobotsoundfactory__pickup-03.wav similarity index 100% rename from syndicate-examples/private/sounds/270342__littlerobotsoundfactory__pickup-03.wav rename to OLD-syndicate-examples/private/sounds/270342__littlerobotsoundfactory__pickup-03.wav diff --git a/syndicate-examples/private/sounds/270343__littlerobotsoundfactory__shoot-01.wav b/OLD-syndicate-examples/private/sounds/270343__littlerobotsoundfactory__shoot-01.wav similarity index 100% rename from syndicate-examples/private/sounds/270343__littlerobotsoundfactory__shoot-01.wav rename to OLD-syndicate-examples/private/sounds/270343__littlerobotsoundfactory__shoot-01.wav diff --git a/syndicate-examples/private/sounds/270344__littlerobotsoundfactory__shoot-00.wav b/OLD-syndicate-examples/private/sounds/270344__littlerobotsoundfactory__shoot-00.wav similarity index 100% rename from syndicate-examples/private/sounds/270344__littlerobotsoundfactory__shoot-00.wav rename to OLD-syndicate-examples/private/sounds/270344__littlerobotsoundfactory__shoot-00.wav diff --git a/syndicate-examples/private/sounds/_readme_and_license.txt b/OLD-syndicate-examples/private/sounds/_readme_and_license.txt similarity index 100% rename from syndicate-examples/private/sounds/_readme_and_license.txt rename to OLD-syndicate-examples/private/sounds/_readme_and_license.txt diff --git a/syndicate-examples/santa.rkt b/OLD-syndicate-examples/santa.rkt similarity index 100% rename from syndicate-examples/santa.rkt rename to OLD-syndicate-examples/santa.rkt diff --git a/syndicate-examples/server-chat-client.rkt b/OLD-syndicate-examples/server-chat-client.rkt similarity index 100% rename from syndicate-examples/server-chat-client.rkt rename to OLD-syndicate-examples/server-chat-client.rkt diff --git a/syndicate-examples/simple-cross-layer.rkt b/OLD-syndicate-examples/simple-cross-layer.rkt similarity index 100% rename from syndicate-examples/simple-cross-layer.rkt rename to OLD-syndicate-examples/simple-cross-layer.rkt diff --git a/syndicate-examples/sqlite.rkt b/OLD-syndicate-examples/sqlite.rkt similarity index 100% rename from syndicate-examples/sqlite.rkt rename to OLD-syndicate-examples/sqlite.rkt diff --git a/syndicate-examples/stdin-echo.rkt b/OLD-syndicate-examples/stdin-echo.rkt similarity index 100% rename from syndicate-examples/stdin-echo.rkt rename to OLD-syndicate-examples/stdin-echo.rkt diff --git a/syndicate-examples/time.rkt b/OLD-syndicate-examples/time.rkt similarity index 100% rename from syndicate-examples/time.rkt rename to OLD-syndicate-examples/time.rkt diff --git a/syndicate-examples/udp-echo.rkt b/OLD-syndicate-examples/udp-echo.rkt similarity index 100% rename from syndicate-examples/udp-echo.rkt rename to OLD-syndicate-examples/udp-echo.rkt diff --git a/syndicate-examples/udp-multicast.rkt b/OLD-syndicate-examples/udp-multicast.rkt similarity index 100% rename from syndicate-examples/udp-multicast.rkt rename to OLD-syndicate-examples/udp-multicast.rkt diff --git a/syndicate-examples/web-core.rkt b/OLD-syndicate-examples/web-core.rkt similarity index 100% rename from syndicate-examples/web-core.rkt rename to OLD-syndicate-examples/web-core.rkt diff --git a/syndicate/bin/syndicate-server-debug.rkt b/OLD-syndicate/bin/syndicate-server-debug.rkt similarity index 100% rename from syndicate/bin/syndicate-server-debug.rkt rename to OLD-syndicate/bin/syndicate-server-debug.rkt diff --git a/syndicate/bin/syndicate-server.rkt b/OLD-syndicate/bin/syndicate-server.rkt similarity index 100% rename from syndicate/bin/syndicate-server.rkt rename to OLD-syndicate/bin/syndicate-server.rkt diff --git a/syndicate/dataspace.rkt b/OLD-syndicate/dataspace.rkt similarity index 100% rename from syndicate/dataspace.rkt rename to OLD-syndicate/dataspace.rkt diff --git a/syndicate/distributed.rkt b/OLD-syndicate/distributed.rkt similarity index 100% rename from syndicate/distributed.rkt rename to OLD-syndicate/distributed.rkt diff --git a/syndicate/distributed/buffer.rkt b/OLD-syndicate/distributed/buffer.rkt similarity index 100% rename from syndicate/distributed/buffer.rkt rename to OLD-syndicate/distributed/buffer.rkt diff --git a/syndicate/distributed/client.rkt b/OLD-syndicate/distributed/client.rkt similarity index 100% rename from syndicate/distributed/client.rkt rename to OLD-syndicate/distributed/client.rkt diff --git a/syndicate/distributed/client/loopback.rkt b/OLD-syndicate/distributed/client/loopback.rkt similarity index 100% rename from syndicate/distributed/client/loopback.rkt rename to OLD-syndicate/distributed/client/loopback.rkt diff --git a/syndicate/distributed/client/tcp.rkt b/OLD-syndicate/distributed/client/tcp.rkt similarity index 100% rename from syndicate/distributed/client/tcp.rkt rename to OLD-syndicate/distributed/client/tcp.rkt diff --git a/syndicate/distributed/federation.rkt b/OLD-syndicate/distributed/federation.rkt similarity index 100% rename from syndicate/distributed/federation.rkt rename to OLD-syndicate/distributed/federation.rkt diff --git a/syndicate/distributed/heartbeat.rkt b/OLD-syndicate/distributed/heartbeat.rkt similarity index 100% rename from syndicate/distributed/heartbeat.rkt rename to OLD-syndicate/distributed/heartbeat.rkt diff --git a/syndicate/distributed/internal-protocol.rkt b/OLD-syndicate/distributed/internal-protocol.rkt similarity index 100% rename from syndicate/distributed/internal-protocol.rkt rename to OLD-syndicate/distributed/internal-protocol.rkt diff --git a/syndicate/distributed/main.rkt b/OLD-syndicate/distributed/main.rkt similarity index 100% rename from syndicate/distributed/main.rkt rename to OLD-syndicate/distributed/main.rkt diff --git a/syndicate/distributed/protocol.rkt b/OLD-syndicate/distributed/protocol.rkt similarity index 100% rename from syndicate/distributed/protocol.rkt rename to OLD-syndicate/distributed/protocol.rkt diff --git a/syndicate/distributed/server.rkt b/OLD-syndicate/distributed/server.rkt similarity index 100% rename from syndicate/distributed/server.rkt rename to OLD-syndicate/distributed/server.rkt diff --git a/syndicate/distributed/server/tcp.rkt b/OLD-syndicate/distributed/server/tcp.rkt similarity index 100% rename from syndicate/distributed/server/tcp.rkt rename to OLD-syndicate/distributed/server/tcp.rkt diff --git a/syndicate/distributed/server/websocket.rkt b/OLD-syndicate/distributed/server/websocket.rkt similarity index 100% rename from syndicate/distributed/server/websocket.rkt rename to OLD-syndicate/distributed/server/websocket.rkt diff --git a/syndicate/distributed/turn.rkt b/OLD-syndicate/distributed/turn.rkt similarity index 100% rename from syndicate/distributed/turn.rkt rename to OLD-syndicate/distributed/turn.rkt diff --git a/syndicate/distributed/wire-protocol.rkt b/OLD-syndicate/distributed/wire-protocol.rkt similarity index 100% rename from syndicate/distributed/wire-protocol.rkt rename to OLD-syndicate/distributed/wire-protocol.rkt diff --git a/syndicate/drivers/config.rkt b/OLD-syndicate/drivers/config.rkt similarity index 100% rename from syndicate/drivers/config.rkt rename to OLD-syndicate/drivers/config.rkt diff --git a/syndicate/drivers/external-event.rkt b/OLD-syndicate/drivers/external-event.rkt similarity index 100% rename from syndicate/drivers/external-event.rkt rename to OLD-syndicate/drivers/external-event.rkt diff --git a/syndicate/drivers/filesystem.rkt b/OLD-syndicate/drivers/filesystem.rkt similarity index 100% rename from syndicate/drivers/filesystem.rkt rename to OLD-syndicate/drivers/filesystem.rkt diff --git a/syndicate/drivers/gl-2d.rkt b/OLD-syndicate/drivers/gl-2d.rkt similarity index 100% rename from syndicate/drivers/gl-2d.rkt rename to OLD-syndicate/drivers/gl-2d.rkt diff --git a/syndicate/drivers/gl-2d/affine.rkt b/OLD-syndicate/drivers/gl-2d/affine.rkt similarity index 100% rename from syndicate/drivers/gl-2d/affine.rkt rename to OLD-syndicate/drivers/gl-2d/affine.rkt diff --git a/syndicate/drivers/gl-2d/texture.rkt b/OLD-syndicate/drivers/gl-2d/texture.rkt similarity index 100% rename from syndicate/drivers/gl-2d/texture.rkt rename to OLD-syndicate/drivers/gl-2d/texture.rkt diff --git a/syndicate/drivers/sqlite.rkt b/OLD-syndicate/drivers/sqlite.rkt similarity index 100% rename from syndicate/drivers/sqlite.rkt rename to OLD-syndicate/drivers/sqlite.rkt diff --git a/syndicate/drivers/tcp.rkt b/OLD-syndicate/drivers/tcp.rkt similarity index 100% rename from syndicate/drivers/tcp.rkt rename to OLD-syndicate/drivers/tcp.rkt diff --git a/syndicate/drivers/timer.rkt b/OLD-syndicate/drivers/timer.rkt similarity index 100% rename from syndicate/drivers/timer.rkt rename to OLD-syndicate/drivers/timer.rkt diff --git a/syndicate/drivers/udp.rkt b/OLD-syndicate/drivers/udp.rkt similarity index 100% rename from syndicate/drivers/udp.rkt rename to OLD-syndicate/drivers/udp.rkt diff --git a/syndicate/drivers/web.rkt b/OLD-syndicate/drivers/web.rkt similarity index 100% rename from syndicate/drivers/web.rkt rename to OLD-syndicate/drivers/web.rkt diff --git a/syndicate/event-expander.rkt b/OLD-syndicate/event-expander.rkt similarity index 100% rename from syndicate/event-expander.rkt rename to OLD-syndicate/event-expander.rkt diff --git a/syndicate/functional-queue.rkt b/OLD-syndicate/functional-queue.rkt similarity index 100% rename from syndicate/functional-queue.rkt rename to OLD-syndicate/functional-queue.rkt diff --git a/syndicate/ground.rkt b/OLD-syndicate/ground.rkt similarity index 100% rename from syndicate/ground.rkt rename to OLD-syndicate/ground.rkt diff --git a/syndicate/lang.rkt b/OLD-syndicate/lang.rkt similarity index 100% rename from syndicate/lang.rkt rename to OLD-syndicate/lang.rkt diff --git a/syndicate/mc/mc-chat-client.rkt b/OLD-syndicate/mc/mc-chat-client.rkt similarity index 100% rename from syndicate/mc/mc-chat-client.rkt rename to OLD-syndicate/mc/mc-chat-client.rkt diff --git a/syndicate/mc/udp-dataspace.rkt b/OLD-syndicate/mc/udp-dataspace.rkt similarity index 100% rename from syndicate/mc/udp-dataspace.rkt rename to OLD-syndicate/mc/udp-dataspace.rkt diff --git a/syndicate/pattern-expander.rkt b/OLD-syndicate/pattern-expander.rkt similarity index 100% rename from syndicate/pattern-expander.rkt rename to OLD-syndicate/pattern-expander.rkt diff --git a/syndicate/pattern.rkt b/OLD-syndicate/pattern.rkt similarity index 100% rename from syndicate/pattern.rkt rename to OLD-syndicate/pattern.rkt diff --git a/syndicate/protocol/credit.rkt b/OLD-syndicate/protocol/credit.rkt similarity index 100% rename from syndicate/protocol/credit.rkt rename to OLD-syndicate/protocol/credit.rkt diff --git a/syndicate/protocol/instance.rkt b/OLD-syndicate/protocol/instance.rkt similarity index 100% rename from syndicate/protocol/instance.rkt rename to OLD-syndicate/protocol/instance.rkt diff --git a/syndicate/reassert.rkt b/OLD-syndicate/reassert.rkt similarity index 100% rename from syndicate/reassert.rkt rename to OLD-syndicate/reassert.rkt diff --git a/syndicate/reflection.rkt b/OLD-syndicate/reflection.rkt similarity index 100% rename from syndicate/reflection.rkt rename to OLD-syndicate/reflection.rkt diff --git a/syndicate/relay.rkt b/OLD-syndicate/relay.rkt similarity index 100% rename from syndicate/relay.rkt rename to OLD-syndicate/relay.rkt diff --git a/syndicate/reload.rkt b/OLD-syndicate/reload.rkt similarity index 100% rename from syndicate/reload.rkt rename to OLD-syndicate/reload.rkt diff --git a/syndicate/skeleton.rkt b/OLD-syndicate/skeleton.rkt similarity index 78% rename from syndicate/skeleton.rkt rename to OLD-syndicate/skeleton.rkt index e9499c0..68b8a6e 100644 --- a/syndicate/skeleton.rkt +++ b/OLD-syndicate/skeleton.rkt @@ -11,6 +11,11 @@ remove-assertion! send-assertion!) +(module+ for-test + (provide make-empty-skeleton/cache + extend-skeleton! + path-cmp)) + (require racket/match) (require racket/hash) (require racket/list) @@ -20,8 +25,6 @@ (require "pattern.rkt") (require "assertions.rkt") -(module+ test (require rackunit)) - ;; A VisibilityRestriction describes ... TODO ;; (visibility-restriction SkProj Assertion) (struct visibility-restriction (proj term) #:transparent) @@ -390,110 +393,3 @@ [(list? term) (list-ref term index)] [(vector? term) (vector-ref term index)] [else (error 'apply-projection "Term representation not supported: ~v" term)]))) - -;;--------------------------------------------------------------------------- - -(module+ test - (struct a (x y) #:transparent) - (struct b (v) #:transparent) - (struct c (v) #:transparent) - (struct d (x y z) #:transparent) - - (define sk - (make-empty-skeleton/cache - (make-hash (for/list [(x (list (a (b 'bee) (b 'cat)) - (a (b 'foo) (c 'bar)) - (a (b 'foo) (c 'BAR)) - (a (c 'bar) (b 'foo)) - (a (c 'dog) (c 'fox)) - (d (b 'DBX) (b 'DBY) (b 'DBZ)) - (d (c 'DCX) (c 'DCY) (c 'DCZ)) - (b 'zot) - 123))] - (cons x #t))))) - - (define i1 - (skeleton-interest (list struct:a (list struct:b #f) #f) - '((0 0)) - '(foo) - '((1)) - (lambda (op . bindings) - (printf "xAB HANDLER: ~v ~v\n" op bindings)) - (lambda (vars) - (printf "xAB CLEANUP: ~v\n" vars)))) - - (add-interest! sk i1) - - (void (extend-skeleton! sk (list struct:a (list struct:b #f) #f))) - (void (extend-skeleton! sk (list struct:a #f (list struct:c #f)))) - (void (extend-skeleton! sk (list struct:a #f (list struct:c (list struct:b #f))))) - (void (extend-skeleton! sk (list struct:a #f #f))) - (void (extend-skeleton! sk (list struct:c #f))) - (void (extend-skeleton! sk (list struct:b #f))) - (void (extend-skeleton! sk (list struct:d (list struct:b #f) #f (list struct:b #f)))) - (void (extend-skeleton! sk (list struct:d (list struct:b #f) #f (list struct:c #f)))) - (void (extend-skeleton! sk (list struct:d (list struct:c #f) #f (list struct:b #f)))) - (void (extend-skeleton! sk (list struct:d (list struct:c #f) #f (list struct:c #f)))) - (check-eq? sk (extend-skeleton! sk #f)) - - (add-interest! sk - (skeleton-interest (list struct:d (list struct:b #f) #f (list struct:c #f)) - '((2 0)) - '(DCZ) - '(() (0) (0 0) (1)) - (lambda (op . bindings) - (printf "DBC HANDLER: ~v ~v\n" op bindings)) - (lambda (vars) - (printf "DBC CLEANUP: ~v\n" vars)))) - - (remove-assertion! sk (a (b 'foo) (c 'bar))) - (remove-assertion! sk (d (b 'B1) (b 'DBY) (c 'DCZ))) - (add-assertion! sk (d (b 'B1) (b 'DBY) (c 'DCZ))) - (add-assertion! sk (d (b 'BX) (b 'DBY) (c 'DCZ))) - (add-assertion! sk (d (b 'B1) (b 'DBY) (c 'CX))) - (add-assertion! sk (d (b 'B1) (b 'DBY) (c 'DCZ))) - (add-assertion! sk (d (b 'BX) (b 'DBY) (c 'DCZ))) - (add-assertion! sk (d (b 'B1) (b 'DBY) (c 'CX))) - - (add-interest! sk - (skeleton-interest (list struct:d #f (list struct:b #f) #f) - '((1 0)) - '(DBY) - '((0) (2)) - (lambda (op . bindings) - (printf "xDB HANDLER: ~v ~v\n" op bindings)) - (lambda (vars) - (printf "xDB CLEANUP: ~v\n" vars)))) - - (send-assertion! sk (d (b 'BX) (b 'DBY) (c 'DCZ))) - (send-assertion! sk (d (b 'BX) (b 'DBY) (c 'DCZ))) - - (remove-assertion! sk (d (b 'B1) (b 'DBY) (c 'DCZ))) - (remove-assertion! sk (d (b 'BX) (b 'DBY) (c 'DCZ))) - (remove-assertion! sk (d (b 'B1) (b 'DBY) (c 'CX))) - (remove-assertion! sk (d (b 'B1) (b 'DBY) (c 'DCZ))) - (remove-assertion! sk (d (b 'BX) (b 'DBY) (c 'DCZ))) - (remove-assertion! sk (d (b 'B1) (b 'DBY) (c 'CX))) - ;; sk - - (remove-interest! sk i1) - - (check-eq? (path-cmp '() '()) '=) - (check-eq? (path-cmp '(1 1) '(1 1)) '=) - (check-eq? (path-cmp '(2 2) '(2 2)) '=) - (check-eq? (path-cmp '(2 1) '(1 1)) '>) - (check-eq? (path-cmp '(1 1) '(2 1)) '<) - (check-eq? (path-cmp '(2 1) '(1 2)) '>) - (check-eq? (path-cmp '(1 2) '(2 1)) '<) - (check-eq? (path-cmp '(2) '(1 1)) '>) - (check-eq? (path-cmp '(1) '(2 1)) '<) - (check-eq? (path-cmp '(2) '(1 2)) '>) - (check-eq? (path-cmp '(1) '(2 1)) '<) - (check-eq? (path-cmp '(2 1) '(1)) '>) - (check-eq? (path-cmp '(1 1) '(2)) '<) - (check-eq? (path-cmp '(2 1) '(1)) '>) - (check-eq? (path-cmp '(1 2) '(2)) '<) - (check-eq? (path-cmp '(1 2) '(1 2)) '=) - (check-eq? (path-cmp '(1) '(1 2)) '<) - (check-eq? (path-cmp '(1 2) '(1)) '>) - ) diff --git a/syndicate/supervise.rkt b/OLD-syndicate/supervise.rkt similarity index 100% rename from syndicate/supervise.rkt rename to OLD-syndicate/supervise.rkt diff --git a/syndicate/support/bytes.rkt b/OLD-syndicate/support/bytes.rkt similarity index 100% rename from syndicate/support/bytes.rkt rename to OLD-syndicate/support/bytes.rkt diff --git a/syndicate/syntax-classes.rkt b/OLD-syndicate/syntax-classes.rkt similarity index 100% rename from syndicate/syntax-classes.rkt rename to OLD-syndicate/syntax-classes.rkt diff --git a/syndicate/syntax.rkt b/OLD-syndicate/syntax.rkt similarity index 100% rename from syndicate/syntax.rkt rename to OLD-syndicate/syntax.rkt diff --git a/syndicate/term.rkt b/OLD-syndicate/term.rkt similarity index 100% rename from syndicate/term.rkt rename to OLD-syndicate/term.rkt diff --git a/syndicate/test-implementation.rkt b/OLD-syndicate/test-implementation.rkt similarity index 100% rename from syndicate/test-implementation.rkt rename to OLD-syndicate/test-implementation.rkt diff --git a/syndicate/test/core/abandon-actions-on-exn.rkt b/OLD-syndicate/test/core/abandon-actions-on-exn.rkt similarity index 100% rename from syndicate/test/core/abandon-actions-on-exn.rkt rename to OLD-syndicate/test/core/abandon-actions-on-exn.rkt diff --git a/syndicate/test/core/clean-adhoc-on-termination.rkt b/OLD-syndicate/test/core/clean-adhoc-on-termination.rkt similarity index 100% rename from syndicate/test/core/clean-adhoc-on-termination.rkt rename to OLD-syndicate/test/core/clean-adhoc-on-termination.rkt diff --git a/syndicate/test/core/complex-pattern.rkt b/OLD-syndicate/test/core/complex-pattern.rkt similarity index 100% rename from syndicate/test/core/complex-pattern.rkt rename to OLD-syndicate/test/core/complex-pattern.rkt diff --git a/syndicate/test/core/correct-retraction-on-exn.rkt b/OLD-syndicate/test/core/correct-retraction-on-exn.rkt similarity index 100% rename from syndicate/test/core/correct-retraction-on-exn.rkt rename to OLD-syndicate/test/core/correct-retraction-on-exn.rkt diff --git a/syndicate/test/core/death-during-startup.rkt b/OLD-syndicate/test/core/death-during-startup.rkt similarity index 100% rename from syndicate/test/core/death-during-startup.rkt rename to OLD-syndicate/test/core/death-during-startup.rkt diff --git a/syndicate/test/core/death-during-turn.rkt b/OLD-syndicate/test/core/death-during-turn.rkt similarity index 100% rename from syndicate/test/core/death-during-turn.rkt rename to OLD-syndicate/test/core/death-during-turn.rkt diff --git a/syndicate/test/core/double-cross-layer.rkt b/OLD-syndicate/test/core/double-cross-layer.rkt similarity index 100% rename from syndicate/test/core/double-cross-layer.rkt rename to OLD-syndicate/test/core/double-cross-layer.rkt diff --git a/syndicate/test/core/during-criterion-snapshotting.rkt b/OLD-syndicate/test/core/during-criterion-snapshotting.rkt similarity index 100% rename from syndicate/test/core/during-criterion-snapshotting.rkt rename to OLD-syndicate/test/core/during-criterion-snapshotting.rkt diff --git a/syndicate/test/core/nesting-confusion-2.rkt b/OLD-syndicate/test/core/nesting-confusion-2.rkt similarity index 100% rename from syndicate/test/core/nesting-confusion-2.rkt rename to OLD-syndicate/test/core/nesting-confusion-2.rkt diff --git a/syndicate/test/core/nesting-confusion.rkt b/OLD-syndicate/test/core/nesting-confusion.rkt similarity index 100% rename from syndicate/test/core/nesting-confusion.rkt rename to OLD-syndicate/test/core/nesting-confusion.rkt diff --git a/syndicate/test/core/partial-retraction.rkt b/OLD-syndicate/test/core/partial-retraction.rkt similarity index 100% rename from syndicate/test/core/partial-retraction.rkt rename to OLD-syndicate/test/core/partial-retraction.rkt diff --git a/syndicate/test/core/pending-changes.rkt b/OLD-syndicate/test/core/pending-changes.rkt similarity index 100% rename from syndicate/test/core/pending-changes.rkt rename to OLD-syndicate/test/core/pending-changes.rkt diff --git a/syndicate/test/core/responsibility-transfer-1.rkt b/OLD-syndicate/test/core/responsibility-transfer-1.rkt similarity index 100% rename from syndicate/test/core/responsibility-transfer-1.rkt rename to OLD-syndicate/test/core/responsibility-transfer-1.rkt diff --git a/syndicate/test/core/responsibility-transfer-2.rkt b/OLD-syndicate/test/core/responsibility-transfer-2.rkt similarity index 100% rename from syndicate/test/core/responsibility-transfer-2.rkt rename to OLD-syndicate/test/core/responsibility-transfer-2.rkt diff --git a/syndicate/test/core/simple-addition.rkt b/OLD-syndicate/test/core/simple-addition.rkt similarity index 100% rename from syndicate/test/core/simple-addition.rkt rename to OLD-syndicate/test/core/simple-addition.rkt diff --git a/syndicate/test/core/simple-box-and-client.rkt b/OLD-syndicate/test/core/simple-box-and-client.rkt similarity index 100% rename from syndicate/test/core/simple-box-and-client.rkt rename to OLD-syndicate/test/core/simple-box-and-client.rkt diff --git a/syndicate/test/core/simple-cross-layer.rkt b/OLD-syndicate/test/core/simple-cross-layer.rkt similarity index 100% rename from syndicate/test/core/simple-cross-layer.rkt rename to OLD-syndicate/test/core/simple-cross-layer.rkt diff --git a/OLD-syndicate/test/core/skeleton.rkt b/OLD-syndicate/test/core/skeleton.rkt new file mode 100644 index 0000000..17c1917 --- /dev/null +++ b/OLD-syndicate/test/core/skeleton.rkt @@ -0,0 +1,111 @@ +#lang racket/base + +(require "../../skeleton.rkt") +(require (submod "../../skeleton.rkt" for-test)) + +(module+ test + (require rackunit) + + (struct a (x y) #:transparent) + (struct b (v) #:transparent) + (struct c (v) #:transparent) + (struct d (x y z) #:transparent) + + (define sk + (make-empty-skeleton/cache + (make-hash (for/list [(x (list (a (b 'bee) (b 'cat)) + (a (b 'foo) (c 'bar)) + (a (b 'foo) (c 'BAR)) + (a (c 'bar) (b 'foo)) + (a (c 'dog) (c 'fox)) + (d (b 'DBX) (b 'DBY) (b 'DBZ)) + (d (c 'DCX) (c 'DCY) (c 'DCZ)) + (b 'zot) + 123))] + (cons x #t))))) + + (define i1 + (skeleton-interest (list struct:a (list struct:b #f) #f) + '((0 0)) + '(foo) + '((1)) + (lambda (op . bindings) + (printf "xAB HANDLER: ~v ~v\n" op bindings)) + (lambda (vars) + (printf "xAB CLEANUP: ~v\n" vars)))) + + (add-interest! sk i1) + + (void (extend-skeleton! sk (list struct:a (list struct:b #f) #f))) + (void (extend-skeleton! sk (list struct:a #f (list struct:c #f)))) + (void (extend-skeleton! sk (list struct:a #f (list struct:c (list struct:b #f))))) + (void (extend-skeleton! sk (list struct:a #f #f))) + (void (extend-skeleton! sk (list struct:c #f))) + (void (extend-skeleton! sk (list struct:b #f))) + (void (extend-skeleton! sk (list struct:d (list struct:b #f) #f (list struct:b #f)))) + (void (extend-skeleton! sk (list struct:d (list struct:b #f) #f (list struct:c #f)))) + (void (extend-skeleton! sk (list struct:d (list struct:c #f) #f (list struct:b #f)))) + (void (extend-skeleton! sk (list struct:d (list struct:c #f) #f (list struct:c #f)))) + (check-eq? sk (extend-skeleton! sk #f)) + + (add-interest! sk + (skeleton-interest (list struct:d (list struct:b #f) #f (list struct:c #f)) + '((2 0)) + '(DCZ) + '(() (0) (0 0) (1)) + (lambda (op . bindings) + (printf "DBC HANDLER: ~v ~v\n" op bindings)) + (lambda (vars) + (printf "DBC CLEANUP: ~v\n" vars)))) + + (remove-assertion! sk (a (b 'foo) (c 'bar))) + (remove-assertion! sk (d (b 'B1) (b 'DBY) (c 'DCZ))) + (add-assertion! sk (d (b 'B1) (b 'DBY) (c 'DCZ))) + (add-assertion! sk (d (b 'BX) (b 'DBY) (c 'DCZ))) + (add-assertion! sk (d (b 'B1) (b 'DBY) (c 'CX))) + (add-assertion! sk (d (b 'B1) (b 'DBY) (c 'DCZ))) + (add-assertion! sk (d (b 'BX) (b 'DBY) (c 'DCZ))) + (add-assertion! sk (d (b 'B1) (b 'DBY) (c 'CX))) + + (add-interest! sk + (skeleton-interest (list struct:d #f (list struct:b #f) #f) + '((1 0)) + '(DBY) + '((0) (2)) + (lambda (op . bindings) + (printf "xDB HANDLER: ~v ~v\n" op bindings)) + (lambda (vars) + (printf "xDB CLEANUP: ~v\n" vars)))) + + (send-assertion! sk (d (b 'BX) (b 'DBY) (c 'DCZ))) + (send-assertion! sk (d (b 'BX) (b 'DBY) (c 'DCZ))) + + (remove-assertion! sk (d (b 'B1) (b 'DBY) (c 'DCZ))) + (remove-assertion! sk (d (b 'BX) (b 'DBY) (c 'DCZ))) + (remove-assertion! sk (d (b 'B1) (b 'DBY) (c 'CX))) + (remove-assertion! sk (d (b 'B1) (b 'DBY) (c 'DCZ))) + (remove-assertion! sk (d (b 'BX) (b 'DBY) (c 'DCZ))) + (remove-assertion! sk (d (b 'B1) (b 'DBY) (c 'CX))) + ;; sk + + (remove-interest! sk i1) + + (check-eq? (path-cmp '() '()) '=) + (check-eq? (path-cmp '(1 1) '(1 1)) '=) + (check-eq? (path-cmp '(2 2) '(2 2)) '=) + (check-eq? (path-cmp '(2 1) '(1 1)) '>) + (check-eq? (path-cmp '(1 1) '(2 1)) '<) + (check-eq? (path-cmp '(2 1) '(1 2)) '>) + (check-eq? (path-cmp '(1 2) '(2 1)) '<) + (check-eq? (path-cmp '(2) '(1 1)) '>) + (check-eq? (path-cmp '(1) '(2 1)) '<) + (check-eq? (path-cmp '(2) '(1 2)) '>) + (check-eq? (path-cmp '(1) '(2 1)) '<) + (check-eq? (path-cmp '(2 1) '(1)) '>) + (check-eq? (path-cmp '(1 1) '(2)) '<) + (check-eq? (path-cmp '(2 1) '(1)) '>) + (check-eq? (path-cmp '(1 2) '(2)) '<) + (check-eq? (path-cmp '(1 2) '(1 2)) '=) + (check-eq? (path-cmp '(1) '(1 2)) '<) + (check-eq? (path-cmp '(1 2) '(1)) '>) + ) diff --git a/syndicate/test/core/spawn-and-send.rkt b/OLD-syndicate/test/core/spawn-and-send.rkt similarity index 100% rename from syndicate/test/core/spawn-and-send.rkt rename to OLD-syndicate/test/core/spawn-and-send.rkt diff --git a/syndicate/test/core/state-machine.rkt b/OLD-syndicate/test/core/state-machine.rkt similarity index 100% rename from syndicate/test/core/state-machine.rkt rename to OLD-syndicate/test/core/state-machine.rkt diff --git a/syndicate/test/core/supervise.rkt b/OLD-syndicate/test/core/supervise.rkt similarity index 100% rename from syndicate/test/core/supervise.rkt rename to OLD-syndicate/test/core/supervise.rkt diff --git a/syndicate/test/distributed/nesting-confusion.rkt b/OLD-syndicate/test/distributed/nesting-confusion.rkt similarity index 100% rename from syndicate/test/distributed/nesting-confusion.rkt rename to OLD-syndicate/test/distributed/nesting-confusion.rkt diff --git a/syndicate/test/distributed/observation-visibility.rkt b/OLD-syndicate/test/distributed/observation-visibility.rkt similarity index 100% rename from syndicate/test/distributed/observation-visibility.rkt rename to OLD-syndicate/test/distributed/observation-visibility.rkt diff --git a/syndicate/test/pattern-test.rkt b/OLD-syndicate/test/pattern-test.rkt similarity index 100% rename from syndicate/test/pattern-test.rkt rename to OLD-syndicate/test/pattern-test.rkt diff --git a/syndicate/test/raw-dataspace.rkt b/OLD-syndicate/test/raw-dataspace.rkt similarity index 100% rename from syndicate/test/raw-dataspace.rkt rename to OLD-syndicate/test/raw-dataspace.rkt diff --git a/syndicate/test/speed/speed-box-and-client.rkt b/OLD-syndicate/test/speed/speed-box-and-client.rkt similarity index 100% rename from syndicate/test/speed/speed-box-and-client.rkt rename to OLD-syndicate/test/speed/speed-box-and-client.rkt diff --git a/syndicate/test/speed/speed-message-sending.rkt b/OLD-syndicate/test/speed/speed-message-sending.rkt similarity index 100% rename from syndicate/test/speed/speed-message-sending.rkt rename to OLD-syndicate/test/speed/speed-message-sending.rkt diff --git a/syndicate/assertions.rkt b/syndicate/assertions.rkt deleted file mode 100644 index 6719a57..0000000 --- a/syndicate/assertions.rkt +++ /dev/null @@ -1,37 +0,0 @@ -#lang racket/base - -(provide message-struct - assertion-struct - (struct-out observe) - (struct-out seal) - (struct-out inbound) - (struct-out outbound) - strong-gensym) - -(require (only-in net/base64 base64-encode)) -(require (only-in racket/random crypto-random-bytes)) -(require (only-in racket/string string-trim)) - -;; Thin veneers over `struct` for declaring intent. -(define-syntax-rule (assertion-struct item ...) (struct item ... #:prefab)) -(define-syntax-rule (message-struct item ...) (struct item ... #:prefab)) - -(assertion-struct observe (specification)) - -;; Seals are used by protocols to prevent routing from examining -;; internal structure of values. -(struct seal (contents) ;; NB. Neither transparent nor prefab - #:methods gen:custom-write - [(define (write-proc s port mode) - (fprintf port "#{~v}" (seal-contents s)))]) - -(struct inbound (assertion) #:prefab) -(struct outbound (assertion) #:prefab) - -(define (strong-gensym [head 'g] #:random-bytes [count 16]) - (string->symbol - (format "~a~a" - head - (string-trim (bytes->string/latin-1 - (base64-encode (crypto-random-bytes count) #"")) - #px"=+")))) diff --git a/syndicate/dataflow.rkt b/syndicate/dataflow.rkt index 96a0215..57da8fc 100644 --- a/syndicate/dataflow.rkt +++ b/syndicate/dataflow.rkt @@ -59,106 +59,3 @@ (parameterize ((current-dataflow-subject-id subject-id)) (repair-node! subject-id))))) (loop)))) - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -(module+ test - (require rackunit) - - (struct cell (value) #:mutable - #:methods gen:custom-write - [(define (write-proc c port mode) - (fprintf port "#" (cell-value c)))]) - - (define g #f) - - (define (R b) - (dataflow-record-observation! g b) - (cell-value b)) - - (define (W b v) - (when (not (equal? (cell-value b) v)) - (dataflow-record-damage! g b) - (set-cell-value! b v))) - - (define (repair! b) - (b)) - - (define-syntax-rule (V expr) - (letrec ((node (cell #f)) - (handler (lambda () - ;; (printf "Evaluating ~a\n" 'expr) - (W node expr)))) - (parameterize ((current-dataflow-subject-id handler)) - (handler) - node))) - - (set! g (make-dataflow-graph)) - (let* ((c (V 123)) - (d (V (* (R c) 2)))) - (check-equal? (list (R c) (R d)) (list 123 246)) - (dataflow-repair-damage! g repair!) - (check-equal? (list (R c) (R d)) (list 123 246)) - (dataflow-repair-damage! g repair!) - (check-equal? (list (R c) (R d)) (list 123 246)) - (W c 124) - (check-equal? (list (R c) (R d)) (list 124 246)) - (dataflow-repair-damage! g repair!) - (check-equal? (list (R c) (R d)) (list 124 248))) - ;; (newline) - - (set! g (make-dataflow-graph)) - - (define xs (V (list 1 2 3 4))) - (define sum (V (foldr + 0 (R xs)))) - (define len (V (length (R xs)))) - (define avg (V (if (zero? (R len)) - (void) - (/ (R sum) (R len))))) - (define scale (V 1)) - (define ans (V (if (zero? (R scale)) - (void) - (and (number? (R avg)) - (/ (R avg) (R scale)))))) - - (define (fix! stage) - ;; (printf "\n----- Stage: ~a\n" stage) - (dataflow-repair-damage! g repair!) - ;; (write `((xs ,(R xs)) - ;; (sum ,(R sum)) - ;; (len ,(R len)) - ;; (avg ,(R avg)) - ;; (scale ,(R scale)) - ;; (ans ,(R ans)))) - ;; (newline) - ) - - (define-syntax-rule (check-results vs ...) - (check-equal? (map R (list xs sum len avg scale ans)) (list vs ...))) - - (fix! 'initial) - (check-results '(1 2 3 4) 10 4 10/4 1 10/4) - - (W scale 0) - (fix! 'scale-zero) - (check-results '(1 2 3 4) 10 4 10/4 0 (void)) - - (W xs (list* 9 0 (R xs))) - (fix! 'with-nine-and-zero) - (check-results '(9 0 1 2 3 4) 19 6 19/6 0 (void)) - - (W xs (list* 5 4 (cddr (R xs)))) - (fix! 'with-five-and-four) - (check-results '(5 4 1 2 3 4) 19 6 19/6 0 (void)) - - (W scale 1) - (fix! 'scale-one) - (check-results '(5 4 1 2 3 4) 19 6 19/6 1 19/6) - - (W xs '()) - (fix! 'empty) - (check-results '() 0 0 (void) 1 #f) - - (W xs (list 4 5 6)) - (fix! 'four-five-six) - (check-results '(4 5 6) 15 3 15/3 1 15/3)) diff --git a/syndicate/gensym.rkt b/syndicate/gensym.rkt new file mode 100644 index 0000000..a2d7666 --- /dev/null +++ b/syndicate/gensym.rkt @@ -0,0 +1,15 @@ +#lang racket/base + +(provide strong-gensym) + +(require (only-in net/base64 base64-encode)) +(require (only-in racket/random crypto-random-bytes)) +(require (only-in racket/string string-trim)) + +(define (strong-gensym [head 'g] #:random-bytes [count 16]) + (string->symbol + (format "~a~a" + head + (string-trim (bytes->string/latin-1 + (base64-encode (crypto-random-bytes count) #"")) + #px"=+")))) diff --git a/syndicate/info.rkt b/syndicate/info.rkt index 01f06ce..91e296e 100644 --- a/syndicate/info.rkt +++ b/syndicate/info.rkt @@ -1,11 +1,5 @@ #lang setup/infotab (define collection "syndicate") -(define racket-launcher-names - '("syndicate-server" - "syndicate-server-debug")) -(define racket-launcher-libraries - '("bin/syndicate-server.rkt" - "bin/syndicate-server-debug.rkt")) (define deps '("rfc6455" "base" diff --git a/syndicate/main.rkt b/syndicate/main.rkt index 78dc0af..b50146d 100644 --- a/syndicate/main.rkt +++ b/syndicate/main.rkt @@ -1,15 +1,15 @@ #lang racket/base -(provide (all-from-out "dataspace.rkt") - (all-from-out "assertions.rkt") - (all-from-out "syntax.rkt") - (all-from-out "ground.rkt") - (all-from-out "relay.rkt")) +;; (provide (all-from-out "dataspace.rkt") +;; (all-from-out "assertions.rkt") +;; (all-from-out "syntax.rkt") +;; (all-from-out "ground.rkt") +;; (all-from-out "relay.rkt")) -(module reader syntax/module-reader syndicate/lang) +;; (module reader syntax/module-reader syndicate/lang) -(require "dataspace.rkt") -(require "assertions.rkt") -(require "syntax.rkt") -(require "ground.rkt") -(require "relay.rkt") +;; (require "dataspace.rkt") +;; (require "assertions.rkt") +;; (require "syntax.rkt") +;; (require "ground.rkt") +;; (require "relay.rkt") diff --git a/syndicate/test/core/dataflow.rkt b/syndicate/test/core/dataflow.rkt new file mode 100644 index 0000000..f50c858 --- /dev/null +++ b/syndicate/test/core/dataflow.rkt @@ -0,0 +1,104 @@ +#lang racket/base + +(require "../../dataflow.rkt") + +(module+ test + (require rackunit) + + (struct cell (value) #:mutable + #:methods gen:custom-write + [(define (write-proc c port mode) + (fprintf port "#" (cell-value c)))]) + + (define g #f) + + (define (R b) + (dataflow-record-observation! g b) + (cell-value b)) + + (define (W b v) + (when (not (equal? (cell-value b) v)) + (dataflow-record-damage! g b) + (set-cell-value! b v))) + + (define (repair! b) + (b)) + + (define-syntax-rule (V expr) + (letrec ((node (cell #f)) + (handler (lambda () + ;; (printf "Evaluating ~a\n" 'expr) + (W node expr)))) + (parameterize ((current-dataflow-subject-id handler)) + (handler) + node))) + + (set! g (make-dataflow-graph)) + (let* ((c (V 123)) + (d (V (* (R c) 2)))) + (check-equal? (list (R c) (R d)) (list 123 246)) + (dataflow-repair-damage! g repair!) + (check-equal? (list (R c) (R d)) (list 123 246)) + (dataflow-repair-damage! g repair!) + (check-equal? (list (R c) (R d)) (list 123 246)) + (W c 124) + (check-equal? (list (R c) (R d)) (list 124 246)) + (dataflow-repair-damage! g repair!) + (check-equal? (list (R c) (R d)) (list 124 248))) + ;; (newline) + + (set! g (make-dataflow-graph)) + + (define xs (V (list 1 2 3 4))) + (define sum (V (foldr + 0 (R xs)))) + (define len (V (length (R xs)))) + (define avg (V (if (zero? (R len)) + (void) + (/ (R sum) (R len))))) + (define scale (V 1)) + (define ans (V (if (zero? (R scale)) + (void) + (and (number? (R avg)) + (/ (R avg) (R scale)))))) + + (define (fix! stage) + ;; (printf "\n----- Stage: ~a\n" stage) + (dataflow-repair-damage! g repair!) + ;; (write `((xs ,(R xs)) + ;; (sum ,(R sum)) + ;; (len ,(R len)) + ;; (avg ,(R avg)) + ;; (scale ,(R scale)) + ;; (ans ,(R ans)))) + ;; (newline) + ) + + (define-syntax-rule (check-results vs ...) + (check-equal? (map R (list xs sum len avg scale ans)) (list vs ...))) + + (fix! 'initial) + (check-results '(1 2 3 4) 10 4 10/4 1 10/4) + + (W scale 0) + (fix! 'scale-zero) + (check-results '(1 2 3 4) 10 4 10/4 0 (void)) + + (W xs (list* 9 0 (R xs))) + (fix! 'with-nine-and-zero) + (check-results '(9 0 1 2 3 4) 19 6 19/6 0 (void)) + + (W xs (list* 5 4 (cddr (R xs)))) + (fix! 'with-five-and-four) + (check-results '(5 4 1 2 3 4) 19 6 19/6 0 (void)) + + (W scale 1) + (fix! 'scale-one) + (check-results '(5 4 1 2 3 4) 19 6 19/6 1 19/6) + + (W xs '()) + (fix! 'empty) + (check-results '() 0 0 (void) 1 #f) + + (W xs (list 4 5 6)) + (fix! 'four-five-six) + (check-results '(4 5 6) 15 3 15/3 1 15/3))