diff --git a/racket/syndicate/actor-lang.rkt b/racket/syndicate/actor-lang.rkt new file mode 100644 index 0000000..dca68c9 --- /dev/null +++ b/racket/syndicate/actor-lang.rkt @@ -0,0 +1,9 @@ +#lang racket/base + +(require (except-in "lang.rkt" + dataspace + assert + )) +(require "actor.rkt") +(provide (all-from-out "lang.rkt") + (all-from-out "actor.rkt")) diff --git a/racket/syndicate/actor.rkt b/racket/syndicate/actor.rkt index c7ab810..27f40c6 100644 --- a/racket/syndicate/actor.rkt +++ b/racket/syndicate/actor.rkt @@ -48,6 +48,9 @@ (struct-out endpoint) ) +(module reader syntax/module-reader + syndicate/actor-lang) + (require racket/set) (require racket/match) diff --git a/racket/syndicate/examples/actor/bank-account.rkt b/racket/syndicate/examples/actor/bank-account.rkt index 1986f60..e1bd314 100644 --- a/racket/syndicate/examples/actor/bank-account.rkt +++ b/racket/syndicate/examples/actor/bank-account.rkt @@ -1,8 +1,6 @@ -#lang syndicate +#lang syndicate/actor ;; Hello-worldish "bank account" example. -(require syndicate/actor) - (struct account (balance) #:prefab) (struct deposit (amount) #:prefab) diff --git a/racket/syndicate/examples/actor/box-and-client.rkt b/racket/syndicate/examples/actor/box-and-client.rkt index 43a9c0d..c77bd21 100644 --- a/racket/syndicate/examples/actor/box-and-client.rkt +++ b/racket/syndicate/examples/actor/box-and-client.rkt @@ -1,8 +1,6 @@ -#lang syndicate +#lang syndicate/actor ;; Simple mutable box and count-to-infinity box client. -(require syndicate/actor) - (struct set-box (new-value) #:transparent) (struct box-state (value) #:transparent) diff --git a/racket/syndicate/examples/actor/broadcast-messages.rkt b/racket/syndicate/examples/actor/broadcast-messages.rkt index 9b9b785..d390e7f 100644 --- a/racket/syndicate/examples/actor/broadcast-messages.rkt +++ b/racket/syndicate/examples/actor/broadcast-messages.rkt @@ -1,8 +1,6 @@ -#lang syndicate +#lang syndicate/actor ;; Demonstrate sending a message to multiple receivers. -(require syndicate/actor) - (struct envelope (destination message) #:prefab) (actor (react (on (message (envelope 'alice $message)) diff --git a/racket/syndicate/examples/actor/chain.rkt b/racket/syndicate/examples/actor/chain.rkt index fc3a473..055edf1 100644 --- a/racket/syndicate/examples/actor/chain.rkt +++ b/racket/syndicate/examples/actor/chain.rkt @@ -1,6 +1,5 @@ -#lang syndicate +#lang syndicate/actor -(require syndicate/actor) (require syndicate/drivers/timer) (spawn-timer-driver) diff --git a/racket/syndicate/examples/actor/chat-client.rkt b/racket/syndicate/examples/actor/chat-client.rkt index 4dfeae2..b635bd3 100644 --- a/racket/syndicate/examples/actor/chat-client.rkt +++ b/racket/syndicate/examples/actor/chat-client.rkt @@ -1,6 +1,5 @@ -#lang syndicate +#lang syndicate/actor -(require syndicate/actor) (require syndicate/drivers/tcp) (require (only-in racket/port read-bytes-line-evt)) diff --git a/racket/syndicate/examples/actor/chat-no-quit-world-no-nesting.rkt b/racket/syndicate/examples/actor/chat-no-quit-world-no-nesting.rkt index d9dba32..706e7ff 100644 --- a/racket/syndicate/examples/actor/chat-no-quit-world-no-nesting.rkt +++ b/racket/syndicate/examples/actor/chat-no-quit-world-no-nesting.rkt @@ -1,6 +1,5 @@ -#lang syndicate +#lang syndicate/actor -(require syndicate/actor) (require syndicate/drivers/tcp) (require (only-in racket/string string-trim)) diff --git a/racket/syndicate/examples/actor/chat-no-quit-world.rkt b/racket/syndicate/examples/actor/chat-no-quit-world.rkt index cbfe29d..35a81ed 100644 --- a/racket/syndicate/examples/actor/chat-no-quit-world.rkt +++ b/racket/syndicate/examples/actor/chat-no-quit-world.rkt @@ -1,6 +1,5 @@ -#lang syndicate +#lang syndicate/actor -(require syndicate/actor) (require syndicate/drivers/tcp) (require (only-in racket/string string-trim)) diff --git a/racket/syndicate/examples/actor/chat-simplified-internals.rkt b/racket/syndicate/examples/actor/chat-simplified-internals.rkt index d5a3412..137ca0e 100644 --- a/racket/syndicate/examples/actor/chat-simplified-internals.rkt +++ b/racket/syndicate/examples/actor/chat-simplified-internals.rkt @@ -1,6 +1,5 @@ -#lang syndicate +#lang syndicate/actor -(require syndicate/actor) (require syndicate/drivers/tcp) (require (only-in racket/string string-trim)) diff --git a/racket/syndicate/examples/actor/chat.rkt b/racket/syndicate/examples/actor/chat.rkt index f769112..39d18af 100644 --- a/racket/syndicate/examples/actor/chat.rkt +++ b/racket/syndicate/examples/actor/chat.rkt @@ -1,6 +1,5 @@ -#lang syndicate +#lang syndicate/actor -(require syndicate/actor) (require syndicate/drivers/tcp) (require (only-in racket/string string-trim)) diff --git a/racket/syndicate/examples/actor/echo.rkt b/racket/syndicate/examples/actor/echo.rkt index 661d2a5..938dbac 100644 --- a/racket/syndicate/examples/actor/echo.rkt +++ b/racket/syndicate/examples/actor/echo.rkt @@ -1,6 +1,5 @@ -#lang syndicate +#lang syndicate/actor -(require syndicate/actor) (require syndicate/drivers/tcp) (spawn-tcp-driver) diff --git a/racket/syndicate/examples/actor/example-during-criterion-snapshotting.rkt b/racket/syndicate/examples/actor/example-during-criterion-snapshotting.rkt index fefba48..8d96ad1 100644 --- a/racket/syndicate/examples/actor/example-during-criterion-snapshotting.rkt +++ b/racket/syndicate/examples/actor/example-during-criterion-snapshotting.rkt @@ -1,4 +1,4 @@ -#lang syndicate +#lang syndicate/actor ;; Illustrates a (now fixed) bug where mutation altering a ;; subscription caused the `retracted` half of a during instance to be ;; lost. @@ -14,8 +14,6 @@ ;; ;; Should eventually be turned into some kind of test case. -(require syndicate/actor) - (struct foo (x y) #:prefab) (actor (define x 123) diff --git a/racket/syndicate/examples/actor/example-partial-retraction.rkt b/racket/syndicate/examples/actor/example-partial-retraction.rkt index c63e98d..e513e7a 100644 --- a/racket/syndicate/examples/actor/example-partial-retraction.rkt +++ b/racket/syndicate/examples/actor/example-partial-retraction.rkt @@ -1,9 +1,7 @@ -#lang syndicate +#lang syndicate/actor ;; Illustrates the response of asserted / retracted / during to ;; observation of assertions discarding some of their dimensions. -(require syndicate/actor) - (struct ready (what) #:prefab) (struct entry (key val) #:prefab) diff --git a/racket/syndicate/examples/actor/file-system-during.rkt b/racket/syndicate/examples/actor/file-system-during.rkt index e8b5b00..0743612 100644 --- a/racket/syndicate/examples/actor/file-system-during.rkt +++ b/racket/syndicate/examples/actor/file-system-during.rkt @@ -1,8 +1,7 @@ -#lang syndicate +#lang syndicate/actor ;; Toy file system, based on the example in the ESOP2016 submission. ;; syndicate/actor implementation, using "during" instead of "on asserted/until retracted". -(require syndicate/actor) (require syndicate/drivers/timer) (require (only-in racket/port read-bytes-line-evt)) (require (only-in racket/string string-trim string-split)) diff --git a/racket/syndicate/examples/actor/file-system-lll.rkt b/racket/syndicate/examples/actor/file-system-lll.rkt index c26237c..30caec2 100644 --- a/racket/syndicate/examples/actor/file-system-lll.rkt +++ b/racket/syndicate/examples/actor/file-system-lll.rkt @@ -1,9 +1,8 @@ -#lang syndicate +#lang syndicate/actor ;; Toy file system, based on the example in the ESOP2016 submission. ;; Low-level implementation. (require (only-in syndicate [assert core:assert])) -(require syndicate/actor) (require syndicate/drivers/timer) (require (only-in racket/port read-bytes-line-evt)) (require (only-in racket/string string-trim string-split)) diff --git a/racket/syndicate/examples/actor/file-system-lll2.rkt b/racket/syndicate/examples/actor/file-system-lll2.rkt index fd17229..7797025 100644 --- a/racket/syndicate/examples/actor/file-system-lll2.rkt +++ b/racket/syndicate/examples/actor/file-system-lll2.rkt @@ -1,9 +1,8 @@ -#lang syndicate +#lang syndicate/actor ;; Toy file system, based on the example in the ESOP2016 submission. ;; Low-level implementation, without subconversation. (require (only-in syndicate [assert core:assert])) -(require syndicate/actor) (require syndicate/drivers/timer) (require (only-in racket/port read-bytes-line-evt)) (require (only-in racket/string string-trim string-split)) diff --git a/racket/syndicate/examples/actor/file-system.rkt b/racket/syndicate/examples/actor/file-system.rkt index 630ec03..3954b5a 100644 --- a/racket/syndicate/examples/actor/file-system.rkt +++ b/racket/syndicate/examples/actor/file-system.rkt @@ -1,8 +1,7 @@ -#lang syndicate +#lang syndicate/actor ;; Toy file system, based on the example in the ESOP2016 submission. ;; syndicate/actor implementation. -(require syndicate/actor) (require syndicate/drivers/timer) (require (only-in racket/port read-bytes-line-evt)) (require (only-in racket/string string-trim string-split)) diff --git a/racket/syndicate/examples/actor/file-system2.rkt b/racket/syndicate/examples/actor/file-system2.rkt index 27735cc..38bc14f 100644 --- a/racket/syndicate/examples/actor/file-system2.rkt +++ b/racket/syndicate/examples/actor/file-system2.rkt @@ -1,8 +1,7 @@ -#lang syndicate +#lang syndicate/actor ;; Toy file system, based on the example in the ESOP2016 submission. ;; syndicate/actor implementation, without subconversation. -(require syndicate/actor) (require syndicate/drivers/timer) (require (only-in racket/port read-bytes-line-evt)) (require (only-in racket/string string-trim string-split)) diff --git a/racket/syndicate/examples/actor/forward-chaining-mini.rkt b/racket/syndicate/examples/actor/forward-chaining-mini.rkt index a6418dd..1614663 100644 --- a/racket/syndicate/examples/actor/forward-chaining-mini.rkt +++ b/racket/syndicate/examples/actor/forward-chaining-mini.rkt @@ -1,8 +1,6 @@ -#lang syndicate +#lang syndicate/actor ;; Minimal syndicate/actor variation on examples/forward-chaining.rkt. -(require syndicate/actor) - (actor (react (assert `(parent john douglas)))) (actor (react (assert `(parent bob john)))) (actor (react (assert `(parent ebbon bob)))) diff --git a/racket/syndicate/examples/actor/mini-echo.rkt b/racket/syndicate/examples/actor/mini-echo.rkt index 7302db1..08e17ab 100644 --- a/racket/syndicate/examples/actor/mini-echo.rkt +++ b/racket/syndicate/examples/actor/mini-echo.rkt @@ -1,6 +1,4 @@ -#lang syndicate - -(require syndicate/actor) +#lang syndicate/actor (struct echo-req (body) #:prefab) (struct echo-resp (body) #:prefab) diff --git a/racket/syndicate/examples/actor/show-field-scope-enforcement1.rkt b/racket/syndicate/examples/actor/show-field-scope-enforcement1.rkt index b4e0f58..73e7bab 100644 --- a/racket/syndicate/examples/actor/show-field-scope-enforcement1.rkt +++ b/racket/syndicate/examples/actor/show-field-scope-enforcement1.rkt @@ -1,8 +1,6 @@ -#lang syndicate +#lang syndicate/actor ;; Demonstrates that fields may not be passed between actors. -(require syndicate/actor) - (actor #:name 'reading-actor (react (on (message `(read-from ,$this-field)) diff --git a/racket/syndicate/examples/actor/show-field-scope-enforcement2.rkt b/racket/syndicate/examples/actor/show-field-scope-enforcement2.rkt index e8074c9..2b207ed 100644 --- a/racket/syndicate/examples/actor/show-field-scope-enforcement2.rkt +++ b/racket/syndicate/examples/actor/show-field-scope-enforcement2.rkt @@ -1,9 +1,7 @@ -#lang syndicate +#lang syndicate/actor ;; Demonstrates that fields may used in a child facet of a declaring ;; facet, but not the other way around. -(require syndicate/actor) - (actor #:name 'reading-actor (react (field [top 123]) diff --git a/racket/syndicate/examples/actor/show-field-scope-enforcement3.rkt b/racket/syndicate/examples/actor/show-field-scope-enforcement3.rkt index 993b220..ccc976b 100644 --- a/racket/syndicate/examples/actor/show-field-scope-enforcement3.rkt +++ b/racket/syndicate/examples/actor/show-field-scope-enforcement3.rkt @@ -1,8 +1,6 @@ -#lang syndicate +#lang syndicate/actor ;; Demonstrates that fields may not be passed between sibling facets. -(require syndicate/actor) - (actor (react (on (message `(read-from ,$this-field)) (log-info "Trying to read from ~a" this-field) diff --git a/racket/syndicate/examples/actor/spreadsheet.rkt b/racket/syndicate/examples/actor/spreadsheet.rkt index 569557e..131d197 100644 --- a/racket/syndicate/examples/actor/spreadsheet.rkt +++ b/racket/syndicate/examples/actor/spreadsheet.rkt @@ -1,7 +1,6 @@ -#lang syndicate +#lang syndicate/actor ;; A toy spreadsheet model. -(require syndicate/actor) (require racket/match) (require racket/set) diff --git a/racket/syndicate/examples/actor/two-buyer-protocol.rkt b/racket/syndicate/examples/actor/two-buyer-protocol.rkt index 1bd1cc5..230d6b9 100644 --- a/racket/syndicate/examples/actor/two-buyer-protocol.rkt +++ b/racket/syndicate/examples/actor/two-buyer-protocol.rkt @@ -1,4 +1,4 @@ -#lang syndicate +#lang syndicate/actor ;; An extended two-buyer book-purchase protocol, based loosely on that ;; given in Honda/Yoshida/Carbone 2008, "Multiparty Asynchronous ;; Session Types". @@ -45,8 +45,6 @@ ;; The order for "The Wind in the Willows" has id 10001485, and will be delivered on March 9th ;;--------------------------------------------------------------------------- -(require syndicate/actor) - ;; Role: SELLER ;; - when interest in (book-quote $title _) appears, ;; asserts (book-quote title (Option Float)), #f meaning not available,