Browse Source

Alpha convert: prospect -> syndicate

hll-syndicate-racket-v1
Tony Garnock-Jones 5 years ago
parent
commit
9dee4e3b30
  1. 22
      README.md
  2. 6
      examples/netstack/arp.rkt
  3. 2
      examples/netstack/demo-config.rkt
  4. 4
      examples/netstack/ethernet.rkt
  5. 6
      examples/netstack/fetchurl.rkt
  6. 6
      examples/netstack/ip.rkt
  7. 12
      examples/netstack/main.rkt
  8. 2
      examples/netstack/port-allocator.rkt
  9. 6
      examples/netstack/tcp.rkt
  10. 4
      examples/netstack/udp.rkt
  11. 3
      examples/platformer/info.rkt
  12. 8
      examples/platformer/main.rkt
  13. 14
      racket/FAQ.md
  14. 4
      racket/Makefile
  15. 2
      racket/doc/chat-client.rkt.txt
  16. 2
      racket/doc/chat.rkt.txt
  17. 2
      racket/doc/echo.rkt.txt
  18. 2
      racket/doc/forward-chaining-hll.rkt.txt
  19. 2
      racket/doc/forward-chaining-hll2.rkt.txt
  20. 2
      racket/doc/forward-chaining-hll3.rkt.txt
  21. 2
      racket/doc/forward-chaining-hll4.rkt.txt
  22. 2
      racket/doc/notes-on-hll.md
  23. 8
      racket/syndicate-gl/2d.rkt
  24. 0
      racket/syndicate-gl/TODO.md
  25. 2
      racket/syndicate-gl/examples/basic.rkt
  26. 0
      racket/syndicate-gl/texture.rkt
  27. 2
      racket/syndicate-monolithic/README.md
  28. 16
      racket/syndicate-monolithic/core.rkt
  29. 6
      racket/syndicate-monolithic/demand-matcher.rkt
  30. 0
      racket/syndicate-monolithic/drivers/tcp.rkt
  31. 0
      racket/syndicate-monolithic/drivers/timer.rkt
  32. 0
      racket/syndicate-monolithic/drivers/udp.rkt
  33. 0
      racket/syndicate-monolithic/drivers/websocket.rkt
  34. 0
      racket/syndicate-monolithic/examples/.gitignore
  35. 0
      racket/syndicate-monolithic/examples/Makefile
  36. 2
      racket/syndicate-monolithic/examples/bank-account.rkt
  37. 2
      racket/syndicate-monolithic/examples/box-and-client.rkt
  38. 2
      racket/syndicate-monolithic/examples/chat-client.rkt
  39. 2
      racket/syndicate-monolithic/examples/chat-no-quit-world-no-nesting.rkt
  40. 2
      racket/syndicate-monolithic/examples/echo.rkt
  41. 2
      racket/syndicate-monolithic/examples/example-lang.rkt
  42. 2
      racket/syndicate-monolithic/examples/example-layer.rkt
  43. 6
      racket/syndicate-monolithic/examples/example-meta-echo.rkt
  44. 6
      racket/syndicate-monolithic/examples/example-meta-echo2.rkt
  45. 0
      racket/syndicate-monolithic/examples/example-plain.rkt
  46. 2
      racket/syndicate-monolithic/examples/example-quit-world.rkt
  47. 2
      racket/syndicate-monolithic/examples/mini-echo.rkt
  48. 2
      racket/syndicate-monolithic/examples/tcp-hello.rkt
  49. 2
      racket/syndicate-monolithic/examples/udp-hello-plain.rkt
  50. 2
      racket/syndicate-monolithic/examples/ws-hello-ssl.rkt
  51. 2
      racket/syndicate-monolithic/examples/ws-hello.rkt
  52. 4
      racket/syndicate-monolithic/ground.rkt
  53. 0
      racket/syndicate-monolithic/lang.rkt
  54. 2
      racket/syndicate-monolithic/lang/reader.rkt
  55. 0
      racket/syndicate-monolithic/main.rkt
  56. 12
      racket/syndicate-monolithic/mux.rkt
  57. 10
      racket/syndicate-monolithic/scn.rkt
  58. 12
      racket/syndicate-monolithic/trace/stderr.rkt
  59. 12
      racket/syndicate/actor.rkt
  60. 2
      racket/syndicate/big-bang.rkt
  61. 0
      racket/syndicate/canonicalize.rkt
  62. 0
      racket/syndicate/comprehensions.rkt
  63. 8
      racket/syndicate/core.rkt
  64. 4
      racket/syndicate/demand-matcher.rkt
  65. 0
      racket/syndicate/drivers/tcp.rkt
  66. 0
      racket/syndicate/drivers/timer.rkt
  67. 0
      racket/syndicate/drivers/udp.rkt
  68. 0
      racket/syndicate/drivers/websocket.rkt
  69. 6
      racket/syndicate/endpoint.rkt
  70. 0
      racket/syndicate/examples/.gitignore
  71. 0
      racket/syndicate/examples/Makefile
  72. 4
      racket/syndicate/examples/actor/bank-account.rkt
  73. 4
      racket/syndicate/examples/actor/box-and-client.rkt
  74. 6
      racket/syndicate/examples/actor/chain.rkt
  75. 6
      racket/syndicate/examples/actor/chat-client.rkt
  76. 6
      racket/syndicate/examples/actor/chat-no-quit-world-no-nesting.rkt
  77. 6
      racket/syndicate/examples/actor/chat-no-quit-world.rkt
  78. 6
      racket/syndicate/examples/actor/chat-simplified-internals.rkt
  79. 6
      racket/syndicate/examples/actor/chat.rkt
  80. 6
      racket/syndicate/examples/actor/echo.rkt
  81. 8
      racket/syndicate/examples/actor/file-system-during.rkt
  82. 8
      racket/syndicate/examples/actor/file-system-lll.rkt
  83. 8
      racket/syndicate/examples/actor/file-system-lll2.rkt
  84. 0
      racket/syndicate/examples/actor/file-system-script
  85. 8
      racket/syndicate/examples/actor/file-system.rkt
  86. 8
      racket/syndicate/examples/actor/file-system2.rkt
  87. 4
      racket/syndicate/examples/actor/mini-echo.rkt
  88. 0
      racket/syndicate/examples/actor/spreadsheet-script
  89. 4
      racket/syndicate/examples/actor/spreadsheet.rkt
  90. 0
      racket/syndicate/examples/all-pairs-shortest-paths/all-pairs-shortest-paths.rb
  91. 4
      racket/syndicate/examples/all-pairs-shortest-paths/all-pairs-shortest-paths.rkt
  92. 0
      racket/syndicate/examples/all-pairs-shortest-paths/all-pairs-shortest-paths2.rb
  93. 4
      racket/syndicate/examples/all-pairs-shortest-paths/all-pairs-shortest-paths2.rkt
  94. 2
      racket/syndicate/examples/bank-account.rkt
  95. 0
      racket/syndicate/examples/big-bang.rkt
  96. 2
      racket/syndicate/examples/box-and-client.rkt
  97. 2
      racket/syndicate/examples/chat-client.rkt
  98. 2
      racket/syndicate/examples/chat-no-quit-world-no-nesting.rkt
  99. 2
      racket/syndicate/examples/chat-no-quit-world.rkt
  100. 2
      racket/syndicate/examples/chat-simplified-internals.rkt

22
README.md

@ -1,6 +1,6 @@
# Prospect: A Networked, Concurrent, Functional Programming Language
# Syndicate: A Networked, Concurrent, Functional Programming Language
Prospect is an actor-based concurrent language able to express
Syndicate is an actor-based concurrent language able to express
communication, enforce isolation, and manage resources.
Network-inspired extensions to a functional core represent imperative
actions as values, giving side-effects locality and enabling
@ -11,7 +11,7 @@ virtual machines) to scope their interactions. Conversations between
actors are multi-party (using a publish/subscribe medium), and actors
can easily participate in many such conversations at once.
Prospect makes *presence* notifications an integral part of pub/sub
Syndicate makes *presence* notifications an integral part of pub/sub
through its *shared dataspaces*, akin to
[tuplespaces](https://en.wikipedia.org/wiki/Tuple_space). Each shared
dataspace doubles as the pub/sub subscription table for its network.
@ -27,18 +27,18 @@ their containing network take on those burdens.
## The code
This repository contains a [Racket](http://racket-lang.org/) package,
`prospect`, which includes
`syndicate`, which includes
- the implementation of the `#lang prospect` language, in the
[`prospect` directory](https://github.com/tonyg/prospect/tree/master/prospect/).
- the implementation of the `#lang syndicate` language, in the
[`syndicate` directory](https://github.com/tonyg/syndicate/tree/master/syndicate/).
- a TCP echo server example, which listens for connections on port
5999 by default, in
[`prospect/examples/echo.rkt`](https://github.com/tonyg/prospect/tree/master/prospect/examples/echo.rkt).
[`syndicate/examples/echo.rkt`](https://github.com/tonyg/syndicate/tree/master/syndicate/examples/echo.rkt).
Connect to it using, for example, `telnet localhost 5999`.
- a handful of other examples, in
[`prospect/examples/`](https://github.com/tonyg/prospect/tree/master/prospect/examples/).
[`syndicate/examples/`](https://github.com/tonyg/syndicate/tree/master/syndicate/examples/).
## Compiling and running the code
@ -46,7 +46,7 @@ You will need Racket version 6.3 or later.
Once you have Racket installed, run
raco pkg install prospect
raco pkg install syndicate
to install the package from the Racket package repository, or
@ -54,11 +54,11 @@ to install the package from the Racket package repository, or
from the root directory of the Git checkout to install the package
from a local snapshot. (Alternatively, `make link` does the same thing.)
This will make `#lang prospect` available to programs.
This will make `#lang syndicate` available to programs.
At this point, you may load and run any of the example `*.rkt` files
in the
[`prospect/examples/`](https://github.com/tonyg/prospect/tree/master/prospect/examples/)
[`syndicate/examples/`](https://github.com/tonyg/syndicate/tree/master/syndicate/examples/)
directory.
## Copyright

6
examples/netstack/arp.rkt

@ -9,9 +9,9 @@
(require racket/set)
(require racket/match)
(require prospect-monolithic)
(require prospect-monolithic/drivers/timer)
(require prospect-monolithic/demand-matcher)
(require syndicate-monolithic)
(require syndicate-monolithic/drivers/timer)
(require syndicate-monolithic/demand-matcher)
(require bitsyntax)
(require "dump-bytes.rkt")

2
examples/netstack/demo-config.rkt

@ -2,7 +2,7 @@
;; Demonstration stack configuration for various hosts.
(require racket/match)
(require prospect-monolithic)
(require syndicate-monolithic)
(require (only-in mzlib/os gethostname))
(require "configuration.rkt")

4
examples/netstack/ethernet.rkt

@ -13,8 +13,8 @@
(require racket/match)
(require racket/async-channel)
(require prospect-monolithic)
(require prospect-monolithic/demand-matcher)
(require syndicate-monolithic)
(require syndicate-monolithic/demand-matcher)
(require packet-socket)
(require bitsyntax)

6
examples/netstack/fetchurl.rkt

@ -1,7 +1,7 @@
#lang prospect-monolithic
#lang syndicate-monolithic
(require prospect-monolithic/demand-matcher)
(require prospect-monolithic/drivers/timer)
(require syndicate-monolithic/demand-matcher)
(require syndicate-monolithic/drivers/timer)
(require "demo-config.rkt")
(require "ethernet.rkt")
(require "arp.rkt")

6
examples/netstack/ip.rkt

@ -13,9 +13,9 @@
(require racket/set)
(require racket/match)
(require (only-in racket/string string-split))
(require prospect-monolithic)
(require prospect-monolithic/drivers/timer)
(require prospect-monolithic/demand-matcher)
(require syndicate-monolithic)
(require syndicate-monolithic/drivers/timer)
(require syndicate-monolithic/demand-matcher)
(require bitsyntax)
(require "dump-bytes.rkt")

12
examples/netstack/main.rkt

@ -1,7 +1,7 @@
#lang prospect-monolithic
#lang syndicate-monolithic
(require prospect-monolithic/demand-matcher)
(require prospect-monolithic/drivers/timer)
(require syndicate-monolithic/demand-matcher)
(require syndicate-monolithic/drivers/timer)
(require "demo-config.rkt")
(require "ethernet.rkt")
(require "arp.rkt")
@ -91,9 +91,9 @@
(string->bytes/utf-8
(format (string-append
"HTTP/1.0 200 OK\r\n\r\n"
"<h1>Hello world from prospect-monolithic-netstack!</h1>\n"
"<p>This is running on prospect-monolithic's own\n"
"<a href='https://github.com/tonyg/prospect-netstack/'>\n"
"<h1>Hello world from syndicate-monolithic-netstack!</h1>\n"
"<p>This is running on syndicate-monolithic's own\n"
"<a href='https://github.com/tonyg/syndicate/'>\n"
"TCP/IP stack</a>.</p>\n"
"<p>There have been ~a requests prior to this one.</p>")
counter)))

2
examples/netstack/port-allocator.rkt

@ -6,7 +6,7 @@
(require racket/set)
(require racket/match)
(require prospect-monolithic)
(require syndicate-monolithic)
(require "ip.rkt")
(struct port-allocation-request (type k) #:prefab)

6
examples/netstack/tcp.rkt

@ -8,9 +8,9 @@
(require racket/set)
(require racket/match)
(require prospect-monolithic)
(require prospect-monolithic/drivers/timer)
(require prospect-monolithic/demand-matcher)
(require syndicate-monolithic)
(require syndicate-monolithic/drivers/timer)
(require syndicate-monolithic/demand-matcher)
(require bitsyntax)
(require "dump-bytes.rkt")

4
examples/netstack/udp.rkt

@ -10,8 +10,8 @@
(require racket/set)
(require racket/match)
(require prospect-monolithic)
(require prospect-monolithic/demand-matcher)
(require syndicate-monolithic)
(require syndicate-monolithic/demand-matcher)
(require bitsyntax)
(require "dump-bytes.rkt")

3
examples/platformer/info.rkt

@ -1,6 +1,5 @@
#lang setup/infotab
(define deps '("git://github.com/tonyg/prospect-gl"
"prospect"
(define deps '("syndicate"
"base"
"htdp-lib"
))

8
examples/platformer/main.rkt

@ -8,15 +8,15 @@
(require racket/promise)
(require plot/utils) ;; for vector utilities
(require prospect)
(require prospect/drivers/timer)
(require prospect-gl/2d)
(require syndicate)
(require syndicate/drivers/timer)
(require syndicate-gl/2d)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Layers:
;;
;; - External I/O
;; as arranged by prospect-gl/2d
;; as arranged by syndicate-gl/2d
;; including keyboard events, interface to rendering, and frame timing
;;
;; - Ground

14
racket/FAQ.md

@ -1,12 +1,12 @@
# FAQ
* How do I run a prospect program?
- `#lang prospect` collects actions (`spawn`s) from module toplevel and
* How do I run a syndicate program?
- `#lang syndicate` collects actions (`spawn`s) from module toplevel and
uses them as boot actions for a ground-level network. The alternative
is to use a different #lang, and to call `run-ground` yourself; see an
example in prospect/examples/example-plain.rkt.
example in syndicate/examples/example-plain.rkt.
* How do I debug a prospect program?
* How do I debug a syndicate program?
- You can view a colored trace of a program's execution on stderr by setting the MINIMART_TRACE environment variable, e.g.
```
@ -220,7 +220,7 @@
```
- use `spawn-network`:
```racket
#lang prospect
#lang syndicate
(spawn-network <net1-spawns> ...)
(spawn-network <net2-spawns> ...
(spawn-network <net3-spawns> ...))
@ -269,8 +269,8 @@
process is killed - the spawning process is not signalled. More thought
required.
* Can I split a prospect program across multiple files?
- Only one module with `#lang prospect` can be used at a time.
* Can I split a syndicate program across multiple files?
- Only one module with `#lang syndicate` can be used at a time.
* Why does `#f` keep getting sent as an event?
- When a behavior returns something besides `#f` in response to an event, it is

4
racket/Makefile

@ -1,5 +1,5 @@
PACKAGENAME=prospect
COLLECTS=prospect prospect-monolithic
PACKAGENAME=syndicate
COLLECTS=syndicate syndicate-monolithic syndicate-gl
all: setup

2
racket/doc/chat-client.rkt.txt

@ -1,4 +1,4 @@
#lang prospect ;; -*- racket -*-
#lang syndicate ;; -*- racket -*-
(require (only-in racket/port read-bytes-line-evt))
(require "../drivers/tcp.rkt")

2
racket/doc/chat.rkt.txt

@ -1,4 +1,4 @@
#lang prospect ;; -*- racket -*-
#lang syndicate ;; -*- racket -*-
(require (only-in racket/string string-trim))
(require "../drivers/tcp.rkt")

2
racket/doc/echo.rkt.txt

@ -1,4 +1,4 @@
#lang prospect ;; -*- racket -*-
#lang syndicate ;; -*- racket -*-
(require "../drivers/tcp.rkt")
(require "../demand-matcher.rkt")

2
racket/doc/forward-chaining-hll.rkt.txt

@ -1,4 +1,4 @@
#lang prospect/hll ;; -*- racket -*-
#lang syndicate/hll ;; -*- racket -*-
(actor (forever #:collect [(count 0)]
(assert `(parent-count ,count))

2
racket/doc/forward-chaining-hll2.rkt.txt

@ -1,4 +1,4 @@
#lang prospect/hll ;; -*- racket -*-
#lang syndicate/hll ;; -*- racket -*-
(actor (forever #:collect [(count 0)]
(assert `(parent-count ,count))

2
racket/doc/forward-chaining-hll3.rkt.txt

@ -1,4 +1,4 @@
#lang prospect/hll ;; -*- racket -*-
#lang syndicate/hll ;; -*- racket -*-
(actor (forever (assert `(parent john douglas))))
(actor (forever (assert `(parent bob john))))

2
racket/doc/forward-chaining-hll4.rkt.txt

@ -1,4 +1,4 @@
#lang prospect/hll ;; -*- racket -*-
#lang syndicate/hll ;; -*- racket -*-
(actor (forever (assert `(parent john douglas))))
(actor (forever (assert `(parent bob john))))

2
racket/doc/notes-on-hll.md

@ -114,7 +114,7 @@ with their values at the time the `until` is started.
## Examples
```racket
#lang prospect/actor
#lang syndicate/actor
;; Simple mutable box and count-to-infinity box client.
(struct set-box (new-value) #:transparent)

8
racket/prospect-gl/2d.rkt → racket/syndicate-gl/2d.rkt

@ -23,9 +23,9 @@
(require (prefix-in image: 2htdp/image))
(require (prefix-in pict: pict))
(require prospect)
(require prospect/trie)
(require prospect/ground)
(require syndicate)
(require syndicate/trie)
(require syndicate/ground)
(require "texture.rkt")
@ -394,7 +394,7 @@
(collect-garbage 'major)
(define frame (new frame%
[style '(fullscreen-button)]
[label "prospect-gl"]
[label "syndicate-gl"]
[width (or width 640)]
[height (or height 480)]))
(define c (new network-canvas%

0
racket/prospect-gl/TODO.md → racket/syndicate-gl/TODO.md

2
racket/prospect-gl/examples/basic.rkt → racket/syndicate-gl/examples/basic.rkt

@ -1,6 +1,6 @@
#lang racket
(require prospect)
(require syndicate)
(require 2htdp/image)
(require "../2d.rkt")

0
racket/prospect-gl/texture.rkt → racket/syndicate-gl/texture.rkt

2
racket/prospect-monolithic/README.md → racket/syndicate-monolithic/README.md

@ -1,4 +1,4 @@
# prospect-monolithic
# syndicate-monolithic
This is an implementation of the monolithic semantics, without any use
of patches.

16
racket/prospect-monolithic/core.rkt → racket/syndicate-monolithic/core.rkt

@ -66,12 +66,12 @@
(require racket/set)
(require racket/match)
(require (only-in racket/list flatten))
(require "../prospect/functional-queue.rkt")
(require "../prospect/trie.rkt")
(require "../syndicate/functional-queue.rkt")
(require "../syndicate/trie.rkt")
(require "scn.rkt")
(require "../prospect/trace.rkt")
(require "../syndicate/trace.rkt")
(require "mux.rkt")
(require "../prospect/pretty.rkt")
(require "../syndicate/pretty.rkt")
(module+ test (require rackunit))
;; Events = SCNs ∪ Messages
@ -111,8 +111,8 @@
states ;; (HashTable PID Any)
)
#:transparent
#:methods gen:prospect-pretty-printable
[(define (prospect-pretty-print w [p (current-output-port)])
#:methods gen:syndicate-pretty-printable
[(define (syndicate-pretty-print w [p (current-output-port)])
(pretty-print-network w p))])
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -439,12 +439,12 @@
(fprintf p " - ~a runnable pids ~a\n" (set-count runnable) (set->list runnable))
(fprintf p " - ~a live processes\n" (hash-count states))
(fprintf p " - ")
(display (indented-port-output 3 (lambda (p) (prospect-pretty-print mux p)) #:first-line? #f) p)
(display (indented-port-output 3 (lambda (p) (syndicate-pretty-print mux p)) #:first-line? #f) p)
(newline p)
(for ([pid (set-union (hash-keys (mux-interest-table mux)) (hash-keys states))])
(fprintf p " ---- process ~a, behavior ~v, STATE:\n" pid (hash-ref behaviors pid #f))
(define state (hash-ref states pid #f))
(display (indented-port-output 6 (lambda (p) (prospect-pretty-print state p))) p)
(display (indented-port-output 6 (lambda (p) (syndicate-pretty-print state p))) p)
(newline p)
(fprintf p " process ~a, behavior ~v, CLAIMS:\n" pid (hash-ref behaviors pid #f))
(display (indented-port-output 6 (lambda (p)

6
racket/prospect-monolithic/demand-matcher.rkt → racket/syndicate-monolithic/demand-matcher.rkt

@ -5,7 +5,7 @@
(require racket/match)
(require "core.rkt")
(require "drivers/timer.rkt")
(require "../prospect/pretty.rkt")
(require "../syndicate/pretty.rkt")
(provide (except-out (struct-out demand-matcher) demand-matcher)
(rename-out [make-demand-matcher demand-matcher])
@ -27,8 +27,8 @@
current-demand ;; (Setof (Listof Any))
current-supply) ;; (Setof (Listof Any))
#:transparent
#:methods gen:prospect-pretty-printable
[(define (prospect-pretty-print s [p (current-output-port)])
#:methods gen:syndicate-pretty-printable
[(define (syndicate-pretty-print s [p (current-output-port)])
(pretty-print-demand-matcher s p))])
;; A ChangeHandler is a ((Constreeof Action) Any* -> (Constreeof Action)).

0
racket/prospect-monolithic/drivers/tcp.rkt → racket/syndicate-monolithic/drivers/tcp.rkt

0
racket/prospect-monolithic/drivers/timer.rkt → racket/syndicate-monolithic/drivers/timer.rkt

0
racket/prospect-monolithic/drivers/udp.rkt → racket/syndicate-monolithic/drivers/udp.rkt

0
racket/prospect-monolithic/drivers/websocket.rkt → racket/syndicate-monolithic/drivers/websocket.rkt

0
racket/prospect-monolithic/examples/.gitignore → racket/syndicate-monolithic/examples/.gitignore

0
racket/prospect-monolithic/examples/Makefile → racket/syndicate-monolithic/examples/Makefile

2
racket/prospect-monolithic/examples/bank-account.rkt → racket/syndicate-monolithic/examples/bank-account.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
;; Hello-worldish "bank account" example.
(struct account (balance) #:prefab)

2
racket/prospect-monolithic/examples/box-and-client.rkt → racket/syndicate-monolithic/examples/box-and-client.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
;; Simple mutable box and count-to-infinity box client.
(struct set-box (new-value) #:transparent)

2
racket/prospect-monolithic/examples/chat-client.rkt → racket/syndicate-monolithic/examples/chat-client.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
(require (only-in racket/port read-bytes-line-evt))
(require "../drivers/tcp.rkt")

2
racket/prospect-monolithic/examples/chat-no-quit-world-no-nesting.rkt → racket/syndicate-monolithic/examples/chat-no-quit-world-no-nesting.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
(require racket/set)
(require (only-in racket/string string-trim))

2
racket/prospect-monolithic/examples/echo.rkt → racket/syndicate-monolithic/examples/echo.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
(require "../drivers/tcp.rkt")
(require "../demand-matcher.rkt")

2
racket/prospect-monolithic/examples/example-lang.rkt → racket/syndicate-monolithic/examples/example-lang.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
(require (only-in racket/port read-line-evt))
(require "../drivers/timer.rkt")

2
racket/prospect-monolithic/examples/example-layer.rkt → racket/syndicate-monolithic/examples/example-layer.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
;; Check that nested-world assertions are properly retracted.
;; Should print two "Got SCN:" tries - one nonempty, and one empty.

6
racket/prospect-monolithic/examples/example-meta-echo.rkt → racket/syndicate-monolithic/examples/example-meta-echo.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
;; Test case for a historical bug in Syndicate.
;;
;; When the bug existed, this program receiveed four SCN events in
@ -13,13 +13,13 @@
;; The fix was to adjust the implementation of state change
;; notifications to cancel the echo for metaassertions.
(require prospect/pretty)
(require syndicate/pretty)
(spawn-network
(spawn (lambda (e counter)
(and e
(let ((new-counter (+ counter 1)))
(printf "Received event ~a:\n~a\n" new-counter (prospect-pretty-print->string e))
(printf "Received event ~a:\n~a\n" new-counter (syndicate-pretty-print->string e))
(transition (+ counter 1) '()))))
0
(list (scn/union (assertion (at-meta 'x))

6
racket/prospect-monolithic/examples/example-meta-echo2.rkt → racket/syndicate-monolithic/examples/example-meta-echo2.rkt

@ -1,13 +1,13 @@
#lang prospect-monolithic
#lang syndicate-monolithic
;; The actor should receive a single event adding the (at-meta x) assertion.
(require prospect/pretty)
(require syndicate/pretty)
(spawn-network
(spawn (lambda (e counter)
(and e
(let ((new-counter (+ counter 1)))
(printf "Received event ~a:\n~a\n" new-counter (prospect-pretty-print->string e))
(printf "Received event ~a:\n~a\n" new-counter (syndicate-pretty-print->string e))
(transition (+ counter 1) '()))))
0
(list (scn/union (assertion (at-meta 'x))

0
racket/prospect-monolithic/examples/example-plain.rkt → racket/syndicate-monolithic/examples/example-plain.rkt

2
racket/prospect-monolithic/examples/example-quit-world.rkt → racket/syndicate-monolithic/examples/example-quit-world.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
;; Demonstrates quit-network.
(require (only-in racket/port read-bytes-line-evt))

2
racket/prospect-monolithic/examples/mini-echo.rkt → racket/syndicate-monolithic/examples/mini-echo.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
(struct echo-req (body) #:prefab)
(struct echo-resp (body) #:prefab)

2
racket/prospect-monolithic/examples/tcp-hello.rkt → racket/syndicate-monolithic/examples/tcp-hello.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
(require "../drivers/tcp.rkt")
(require "../demand-matcher.rkt")

2
racket/prospect-monolithic/examples/udp-hello-plain.rkt → racket/syndicate-monolithic/examples/udp-hello-plain.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
(require "../drivers/udp.rkt")

2
racket/prospect-monolithic/examples/ws-hello-ssl.rkt → racket/syndicate-monolithic/examples/ws-hello-ssl.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
(require "../drivers/websocket.rkt")
(require "../demand-matcher.rkt")

2
racket/prospect-monolithic/examples/ws-hello.rkt → racket/syndicate-monolithic/examples/ws-hello.rkt

@ -1,4 +1,4 @@
#lang prospect-monolithic
#lang syndicate-monolithic
(require "../drivers/websocket.rkt")
(require "../demand-matcher.rkt")

4
racket/prospect-monolithic/ground.rkt → racket/syndicate-monolithic/ground.rkt

@ -6,9 +6,9 @@
(require racket/match)
(require racket/list)
(require "core.rkt")
(require "../prospect/trace.rkt")
(require "../syndicate/trace.rkt")
(require "trace/stderr.rkt")
(require "../prospect/tset.rkt")
(require "../syndicate/tset.rkt")
(provide (struct-out external-event)
send-ground-message

0
racket/prospect-monolithic/lang.rkt → racket/syndicate-monolithic/lang.rkt

2
racket/prospect-monolithic/lang/reader.rkt → racket/syndicate-monolithic/lang/reader.rkt

@ -1,2 +1,2 @@
#lang s-exp syntax/module-reader
prospect-monolithic/lang
syndicate-monolithic/lang

0
racket/prospect-monolithic/main.rkt → racket/syndicate-monolithic/main.rkt

12
racket/prospect-monolithic/mux.rkt → racket/syndicate-monolithic/mux.rkt

@ -16,11 +16,11 @@
(require racket/set)
(require racket/match)
(require "../prospect/trie.rkt")
(require "../syndicate/trie.rkt")
(require "scn.rkt")
(require "../prospect/trace.rkt")
(require "../prospect/tset.rkt")
(require "../prospect/pretty.rkt")
(require "../syndicate/trace.rkt")
(require "../syndicate/tset.rkt")
(require "../syndicate/pretty.rkt")
;; A PID is a Nat.
;; A Label is a PID or 'meta.
@ -30,8 +30,8 @@
interest-table ;; (HashTable Label Matcher)
)
#:transparent
#:methods gen:prospect-pretty-printable
[(define (prospect-pretty-print m [p (current-output-port)])
#:methods gen:syndicate-pretty-printable
[(define (syndicate-pretty-print m [p (current-output-port)])
(pretty-print-mux m p))])
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

10
racket/prospect-monolithic/scn.rkt → racket/syndicate-monolithic/scn.rkt

@ -17,17 +17,17 @@
(require racket/set)
(require racket/match)
(require "../prospect/trie.rkt")
(require "../prospect/tset.rkt")
(require "../prospect/pretty.rkt")
(require "../syndicate/trie.rkt")
(require "../syndicate/tset.rkt")
(require "../syndicate/pretty.rkt")
(module+ test (require rackunit))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; State Change Notifications
(struct scn (trie) #:transparent
#:methods gen:prospect-pretty-printable
[(define (prospect-pretty-print d [p (current-output-port)])
#:methods gen:syndicate-pretty-printable
[(define (syndicate-pretty-print d [p (current-output-port)])
(pretty-print-trie (scn-trie d) p))])
;; Claims, Interests, Locations, and Advertisements

12
racket/prospect-monolithic/trace/stderr.rkt → racket/syndicate-monolithic/trace/stderr.rkt

@ -8,9 +8,9 @@
(require racket/exn)
(require (only-in racket/string string-join))
(require "../core.rkt")
(require "../../prospect/trace.rkt")
(require "../../syndicate/trace.rkt")
(require "../mux.rkt")
(require "../../prospect/pretty.rkt")
(require "../../syndicate/pretty.rkt")
(define (env-aref varname default alist)
(define key (or (getenv varname) default))
@ -118,7 +118,7 @@
(when (not (boring-state? st))
(with-color YELLOW
(output "~a's state just before the event:\n" pidstr)
(prospect-pretty-print st (current-error-port)))))]
(syndicate-pretty-print st (current-error-port)))))]
[('process-step-result (list pids e beh st exn t))
(define pidstr (format-pids pids))
(define relevant-exn? (and show-exceptions? exn))
@ -143,7 +143,7 @@
(when (exn-and-not (and show-process-states-pre? (not (boring-state? st))))
(with-color YELLOW
(output "~a's state just before the event:\n" pidstr)
(prospect-pretty-print st (current-error-port))))
(syndicate-pretty-print st (current-error-port))))
(when relevant-exn?
(with-color WHITE-ON-RED
(output "Process ~a ~v died with exception:\n~a\n"
@ -159,7 +159,7 @@
(when (not (equal? st (transition-state t)))
(with-color YELLOW
(output "~a's state just after the event:\n" pidstr)
(prospect-pretty-print (transition-state t) (current-error-port)))))))]
(syndicate-pretty-print (transition-state t) (current-error-port)))))))]
[('internal-action (list pids a old-w))
(define pidstr (format-pids pids))
(define oldcount (hash-count (network-behaviors old-w)))
@ -209,7 +209,7 @@
newcount))
(unless (boring-state? state)
(output "~a's initial state:\n" newpidstr)
(prospect-pretty-print state (current-error-port)))
(syndicate-pretty-print state (current-error-port)))
(unless (trie-empty? interests)
(output "~a's initial interests:\n" newpidstr)
(pretty-print-trie interests (current-error-port))))]

12
racket/prospect/actor.rkt → racket/syndicate/actor.rkt

@ -122,8 +122,8 @@
mux ;; Mux
)
#:transparent
#:methods gen:prospect-pretty-printable
[(define (prospect-pretty-print s [p (current-output-port)])
#:methods gen:syndicate-pretty-printable
[(define (syndicate-pretty-print s [p (current-output-port)])
(pretty-print-actor-state s p))])
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -853,7 +853,7 @@
(fprintf p " - variables:\n")
(for ((v variables))
(fprintf p " - ")
(display (indented-port-output 6 (lambda (p) (prospect-pretty-print v p)) #:first-line? #f) p)
(display (indented-port-output 6 (lambda (p) (syndicate-pretty-print v p)) #:first-line? #f) p)
(newline p))
(fprintf p " - aggregates:\n")
(for (((index a) (in-hash aggregates)))
@ -861,14 +861,14 @@
(fprintf p "~a" leader)
(display (indented-port-output #:first-line? #f
(string-length leader)
(lambda (p) (prospect-pretty-print a p)))
(lambda (p) (syndicate-pretty-print a p)))
p)
(newline p))
(fprintf p " - pending-patch:\n")
(display (indented-port-output 3 (lambda (p) (prospect-pretty-print pending-patch p))) p)
(display (indented-port-output 3 (lambda (p) (syndicate-pretty-print pending-patch p))) p)
(newline p)
(fprintf p " - ")
(display (indented-port-output 3 (lambda (p) (prospect-pretty-print mux p)) #:first-line? #f) p)
(display (indented-port-output 3 (lambda (p) (syndicate-pretty-print mux p)) #:first-line? #f) p)
(newline p))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

2
racket/prospect/big-bang.rkt → racket/syndicate/big-bang.rkt

@ -169,7 +169,7 @@
#:height [height #f]
#:register [ip LOCALHOST]
#:port [port-number SQPORT]
#:name [world-name (gensym 'prospect)]
#:name [world-name (gensym 'syndicate)]
. boot-actions)
(big-bang-network** width height boot-actions
(on-receive (lambda (b sexps)

0
racket/prospect/canonicalize.rkt → racket/syndicate/canonicalize.rkt

0
racket/prospect/comprehensions.rkt → racket/syndicate/comprehensions.rkt

8
racket/prospect/core.rkt → racket/syndicate/core.rkt

@ -111,8 +111,8 @@
states ;; (HashTable PID Any)
)
#:transparent
#:methods gen:prospect-pretty-printable
[(define (prospect-pretty-print w [p (current-output-port)])
#:methods gen:syndicate-pretty-printable
[(define (syndicate-pretty-print w [p (current-output-port)])
(pretty-print-network w p))])
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -435,12 +435,12 @@
(fprintf p " - ~a runnable pids ~a\n" (set-count runnable) (set->list runnable))
(fprintf p " - ~a live processes\n" (hash-count states))
(fprintf p " - ")
(display (indented-port-output 3 (lambda (p) (prospect-pretty-print mux p)) #:first-line? #f) p)
(display (indented-port-output 3 (lambda (p) (syndicate-pretty-print mux p)) #:first-line? #f) p)
(newline p)
(for ([pid (set-union (hash-keys (mux-interest-table mux)) (hash-keys states))])
(fprintf p " ---- process ~a, behavior ~v, STATE:\n" pid (hash-ref behaviors pid #f))
(define state (hash-ref states pid #f))
(display (indented-port-output 6 (lambda (p) (prospect-pretty-print state p))) p)
(display (indented-port-output 6 (lambda (p) (syndicate-pretty-print state p))) p)
(newline p)
(fprintf p " process ~a, behavior ~v, CLAIMS:\n" pid (hash-ref behaviors pid #f))
(display (indented-port-output 6 (lambda (p)

4
racket/prospect/demand-matcher.rkt → racket/syndicate/demand-matcher.rkt

@ -27,8 +27,8 @@
current-demand ;; (Setof (Listof Any))
current-supply) ;; (Setof (Listof Any))
#:transparent
#:methods gen:prospect-pretty-printable
[(define (prospect-pretty-print s [p (current-output-port)])
#:methods gen:syndicate-pretty-printable
[(define (syndicate-pretty-print s [p (current-output-port)])
(pretty-print-demand-matcher s p))])
;; A ChangeHandler is a ((Constreeof Action) Any* -> (Constreeof Action)).

0
racket/prospect/drivers/tcp.rkt → racket/syndicate/drivers/tcp.rkt

0
racket/prospect/drivers/timer.rkt → racket/syndicate/drivers/timer.rkt

0
racket/prospect/drivers/udp.rkt → racket/syndicate/drivers/udp.rkt

0
racket/prospect/drivers/websocket.rkt → racket/syndicate/drivers/websocket.rkt

6
racket/prospect/endpoint.rkt → racket/syndicate/endpoint.rkt

@ -30,8 +30,8 @@
state ;; Any
)
#:transparent
#:methods gen:prospect-pretty-printable
[(define (prospect-pretty-print g [p (current-output-port)])
#:methods gen:syndicate-pretty-printable
[(define (syndicate-pretty-print g [p (current-output-port)])
(pretty-print-endpoint-group g p))])
;; A Endpoint is a (Event State -> Transition)
@ -172,7 +172,7 @@
(match-define (endpoint-group m endpoints state) g)
(fprintf p "ENDPOINT GROUP:\n")
(fprintf p " ---- STATE:\n")
(display (indented-port-output 6 (lambda (p) (prospect-pretty-print state p))) p)
(display (indented-port-output 6 (lambda (p) (syndicate-pretty-print state p))) p)
(newline p)
(fprintf p " - ~a endpoints\n" (hash-count endpoints))
(fprintf p " - next eid: ~a\n" (mux-next-pid mux))

0
racket/prospect/examples/.gitignore → racket/syndicate/examples/.gitignore

0
racket/prospect/examples/Makefile → racket/syndicate/examples/Makefile

4
racket/prospect/examples/actor/bank-account.rkt → racket/syndicate/examples/actor/bank-account.rkt

@ -1,7 +1,7 @@
#lang prospect
#lang syndicate
;; Hello-worldish "bank account" example.
(require prospect/actor)
(require syndicate/actor)
(struct account (balance) #:prefab)
(struct deposit (amount) #:prefab)

4
racket/prospect/examples/actor/box-and-client.rkt → racket/syndicate/examples/actor/box-and-client.rkt

@ -1,7 +1,7 @@
#lang prospect
#lang syndicate
;; Simple mutable box and count-to-infinity box client.
(require prospect/actor)
(require syndicate/actor)
(struct set-box (new-value) #:transparent)
(struct box-state (value) #:transparent)

6
racket/prospect/examples/actor/chain.rkt → racket/syndicate/examples/actor/chain.rkt

@ -1,7 +1,7 @@
#lang prospect
#lang syndicate
(require prospect/actor)
(require prospect/drivers/timer)
(require syndicate/actor)
(require syndicate/drivers/timer)
(spawn-timer-driver)

6
racket/prospect/examples/actor/chat-client.rkt → racket/syndicate/examples/actor/chat-client.rkt

@ -1,7 +1,7 @@
#lang prospect
#lang syndicate
(require prospect/actor)
(require prospect/drivers/tcp)
(require syndicate/actor)
(require syndicate/drivers/tcp)
(require (only-in racket/port read-bytes-line-evt))
(define local-handle (tcp-handle 'chat))

6
racket/prospect/examples/actor/chat-no-quit-world-no-nesting.rkt → racket/syndicate/examples/actor/chat-no-quit-world-no-nesting.rkt

@ -1,7 +1,7 @@
#lang prospect
#lang syndicate
(require prospect/actor)
(require prospect/drivers/tcp)
(require syndicate/actor)
(require syndicate/drivers/tcp)
(require (only-in racket/string string-trim))
(struct says (who what) #:prefab)

6
racket/prospect/examples/actor/chat-no-quit-world.rkt → racket/syndicate/examples/actor/chat-no-quit-world.rkt

@ -1,7 +1,7 @@
#lang prospect
#lang syndicate
(require prospect/actor)
(require prospect/drivers/tcp)
(require syndicate/actor)
(require syndicate/drivers/tcp)
(require (only-in racket/string string-trim))
(struct says (who what) #:prefab)

6
racket/prospect/examples/actor/chat-simplified-internals.rkt → racket/syndicate/examples/actor/chat-simplified-internals.rkt

@ -1,7 +1,7 @@
#lang prospect
#lang syndicate
(require prospect/actor)
(require prospect/drivers/tcp)
(require syndicate/actor)
(require syndicate/drivers/tcp)
(require (only-in racket/string string-trim))
(struct tcp-remote-open (id) #:prefab)

6
racket/prospect/examples/actor/chat.rkt → racket/syndicate/examples/actor/chat.rkt

@ -1,7 +1,7 @@
#lang prospect
#lang syndicate
(require prospect/actor)
(require prospect/drivers/tcp)
(require syndicate/actor)
(require syndicate/drivers/tcp)
(require (only-in racket/string string-trim))
(struct says (who what) #:prefab)

6
racket/prospect/examples/actor/echo.rkt → racket/syndicate/examples/actor/echo.rkt

@ -1,7 +1,7 @@
#lang prospect
#lang syndicate
(require prospect/actor)
(require prospect/drivers/tcp)
(require syndicate/actor)
(require syndicate/drivers/tcp)
(spawn-tcp-driver)

8
racket/prospect/examples/actor/file-system-during.rkt → racket/syndicate/examples/actor/file-system-during.rkt

@ -1,9 +1,9 @@
#lang prospect
#lang syndicate
;; Toy file system, based on the example in the ESOP2016 submission.
;; prospect/actor implementation, using "during" instead of "on asserted/until retracted".
;; syndicate/actor implementation, using "during" instead of "on asserted/until retracted".
(require prospect/actor)
(require prospect/drivers/timer)
(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))

8
racket/prospect/examples/actor/file-system-lll.rkt → racket/syndicate/examples/actor/file-system-lll.rkt

@ -1,10 +1,10 @@
#lang prospect
#lang syndicate
;; Toy file system, based on the example in the ESOP2016 submission.
;; Low-level implementation.
(require (only-in prospect [assert core:assert]))
(require prospect/actor)
(require prospect/drivers/timer)
(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))
(require racket/set)

8
racket/prospect/examples/actor/file-system-lll2.rkt → racket/syndicate/examples/actor/file-system-lll2.rkt

@ -1,10 +1,10 @@
#lang prospect
#lang syndicate
;; Toy file system, based on the example in the ESOP2016 submission.
;; Low-level implementation, without subconversation.
(require (only-in prospect [assert core:assert]))
(require prospect/actor)
(require prospect/drivers/timer)
(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))
(require racket/set)

0
racket/prospect/examples/actor/file-system-script → racket/syndicate/examples/actor/file-system-script

8
racket/prospect/examples/actor/file-system.rkt → racket/syndicate/examples/actor/file-system.rkt

@ -1,9 +1,9 @@
#lang prospect
#lang syndicate
;; Toy file system, based on the example in the ESOP2016 submission.
;; prospect/actor implementation.
;; syndicate/actor implementation.
(require prospect/actor)
(require prospect/drivers/timer)
(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))

8
racket/prospect/examples/actor/file-system2.rkt → racket/syndicate/examples/actor/file-system2.rkt

@ -1,9 +1,9 @@
#lang prospect
#lang syndicate
;; Toy file system, based on the example in the ESOP2016 submission.
;; prospect/actor implementation, without subconversation.
;; syndicate/actor implementation, without subconversation.
(require prospect/actor)
(require prospect/drivers/timer)
(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))
(require racket/set)

4
racket/prospect/examples/actor/mini-echo.rkt → racket/syndicate/examples/actor/mini-echo.rkt

@ -1,6 +1,6 @@
#lang prospect
#lang syndicate
(require prospect/actor)
(require syndicate/actor)
(struct echo-req (body) #:prefab)
(struct echo-resp (body) #:prefab)

0
racket/prospect/examples/actor/spreadsheet-script → racket/syndicate/examples/actor/spreadsheet-script

4
racket/prospect/examples/actor/spreadsheet.rkt → racket/syndicate/examples/actor/spreadsheet.rkt

@ -1,7 +1,7 @@
#lang prospect
#lang syndicate
;; A toy spreadsheet model.
(require prospect/actor)
(require syndicate/actor)
(require racket/match)
(require racket/set)

0
racket/prospect/examples/all-pairs-shortest-paths/all-pairs-shortest-paths.rb → racket/syndicate/examples/all-pairs-shortest-paths/all-pairs-shortest-paths.rb

4
racket/prospect/examples/all-pairs-shortest-paths/all-pairs-shortest-paths.rkt → racket/syndicate/examples/all-pairs-shortest-paths/all-pairs-shortest-paths.rkt

@ -1,4 +1,4 @@
#lang prospect
#lang syndicate
;; After Figure 1 in "Logic and lattices for distributed programming",
;; Conway et. al, UCB tech report, 2012
;;
@ -6,7 +6,7 @@
;; input.
(require racket/set)
(require prospect/actor)
(require syndicate/actor)
(struct link (from to cost) #:prefab)
(struct path (from to cost) #:prefab)

0
racket/prospect/examples/all-pairs-shortest-paths/all-pairs-shortest-paths2.rb → racket/syndicate/examples/all-pairs-shortest-paths/all-pairs-shortest-paths2.rb

4
racket/prospect/examples/all-pairs-shortest-paths/all-pairs-shortest-paths2.rkt → racket/syndicate/examples/all-pairs-shortest-paths/all-pairs-shortest-paths2.rkt

@ -1,11 +1,11 @@
#lang prospect
#lang syndicate
;; After Figure 1 in "Logic and lattices for distributed programming",
;; Conway et. al, UCB tech report, 2012
;;
;; Added path-seen set to ensure termination on input cycles.
(require racket/set)
(require prospect/actor)
(require syndicate/actor)
(struct link (from to cost) #:prefab)
(struct path (from to seen cost) #:prefab)

2
racket/prospect/examples/bank-account.rkt → racket/syndicate/examples/bank-account.rkt

@ -1,4 +1,4 @@
#lang prospect
#lang syndicate
;; Hello-worldish "bank account" example.
(struct account (balance) #:prefab)

0
racket/prospect/examples/big-bang.rkt → racket/syndicate/examples/big-bang.rkt

2
racket/prospect/examples/box-and-client.rkt → racket/syndicate/examples/box-and-client.rkt

@ -1,4 +1,4 @@
#lang prospect
#lang syndicate
;; Simple mutable box and count-to-infinity box client.
(struct set-box (new-value) #:transparent)

2
racket/prospect/examples/chat-client.rkt → racket/syndicate/examples/chat-client.rkt

@ -1,4 +1,4 @@
#lang prospect
#lang syndicate
(require (only-in racket/port read-bytes-line-evt))
(require "../drivers/tcp.rkt")

2
racket/prospect/examples/chat-no-quit-world-no-nesting.rkt → racket/syndicate/examples/chat-no-quit-world-no-nesting.rkt

@ -1,4 +1,4 @@
#lang prospect
#lang syndicate
(require (only-in racket/string string-trim))
(require "../drivers/tcp.rkt")

2
racket/prospect/examples/chat-no-quit-world.rkt → racket/syndicate/examples/chat-no-quit-world.rkt

@ -1,4 +1,4 @@
#lang prospect
#lang syndicate
(require (only-in racket/string string-trim))
(require "../drivers/tcp.rkt")

2
racket/prospect/examples/chat-simplified-internals.rkt → racket/syndicate/examples/chat-simplified-internals.rkt

@ -1,4 +1,4 @@
#lang prospect
#lang syndicate
;; The chat server, using a proxy abstracting over details of the TCP
;; driver's protocol.

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save