@ -1,4 +1,4 @@
(provide (struct-out ircd-listener)
;; ARP protocol, http://tools.ietf.org/html/rfc826
;; Only does ARP-over-ethernet.
;; Demonstration stack configuration for various hosts.
;; Ethernet driver
(provide (struct-out ethernet-packet)
(provide (struct-out ip-packet)
;; UDP/TCP port allocator
(provide (struct-out tcp-address)
(provide (struct-out udp-remote-address)
;; Compare to "ezd" clock-face example from: J. F. Bartlett, “Don’t
;; Fidget with Widgets, Draw!,” Palo Alto, California, DEC WRL
;; Research Report 91/6, May 1991.
;; Multiple animated sprites.
;; 2016-12-12 With the current implementations of (a) Syndicate's
;; Big-bang specific timestate implementation with compatible protocol.
(provide (struct-out later-than)
;; Generic relay for WebSockets/TCP/etc-based participation in a network.
;; Monitor configuration files.
(provide (struct-out config)
;; Filesystem change monitor driver
(provide (struct-out file-content)
;; Driver for Racket's GUI.
;; Dreadfully simplified IRC client driver.
(provide (struct-out irc-connection)
(provide (struct-out tcp-channel-line))
(provide (struct-out/defaults [make-smtp-account-config smtp-account-config])
(rename-out [smtp-account-config <smtp-account-config>])
;; More general web driver: supports normal HTTP as well as websockets.
(provide (struct-out web-virtual-host)
;; Hello-worldish "bank account" example.
(struct account (balance) #:prefab)
;; Simple mutable box and count-to-infinity box client.
(struct set-box (new-value) #:transparent)
;; Demonstrate sending a message to multiple receivers.
(struct envelope (destination message) #:prefab)
;; Evolution of chat-multiroom-topic.rkt to support persistent room topics.
;; Evolution of chat-multiroom.rkt to support room topics.
;; Evolution of chat-simplified-internals2.rkt to support multiple rooms.
;; Uses the approach of modifying the protocol to include a room name.
;; Demonstrates debouncer-like functionality.
;; Test case for a bug relating to use of parameters to accumulate
;; actions across react/suspend when an intermediate parameterization
;; for current-dataflow-subject-id has taken place.
;; Test case for a problem written up on 25 Oct 2016 in my research
;; Demonstrates a (fixed) bug in define/query-value scoping.
;; Buggy output:
;; Demonstrates a bug: rising-edge of a predicate that starts off true
;; yields a crash.
;; Illustrates a (now fixed) bug where mutation altering a
;; subscription caused the `retracted` half of a during instance to be
;; Demonstrate FRP-like "glitching"
;; Based on an example from the FRP survey of Bainomugisha et al.
;; Shows that the checks enforcing single-use suspension-resumption are working.
(spawn #:name 'shouldnt-work
;; Illustrates the response of asserted / retracted / during to
;; observation of assertions discarding some of their dimensions.
;; Demonstrates glitch preservation in during/spawn.
;; Previously, `spawn` was expanded in place into the new actor's
;; Demonstrates responsibility transfer.
;; Shows the difference between a supervised exit and a supervised crash.
;; Illustrates a (now fixed) bug where creating a facet interested in something
;; already known didn't properly trigger the assertion-handler.
;; Demonstrate handling of facet termination.
;; Prior to early November, 2016, only a *single* stop-when was able
;; After the Fahrenheit-to-Celsius converter example in "Fabrik - A
;; Visual Programming Environment", Ingalls, Wallace, Chow, Ludolph
;; and Doyle, OOPSLA 1988.
;; Toy file system, based on the example in the ESOP2016 submission.
;; syndicate/actor implementation, using "during" instead of "on asserted/until retracted".
;; Low-level implementation.
;; Low-level implementation, without subconversation.
;; syndicate/actor implementation.
;; syndicate/actor implementation, without subconversation.
;; Minimal syndicate/actor variation on examples/forward-chaining.rkt.
(spawn (assert `(parent john douglas)))
;; File System Demo protocol
(provide (struct-out file)
;; Simple "shell" or REPL, used by the file-system demos.
(require (only-in racket/port read-bytes-line-evt))
;; Small test program for the gui.rkt driver
;; Demonstrate let-event.
;; Should print "Complete.".
(struct echo-req (body) #:prefab)
(struct echo-resp (body) #:prefab)
;; Counting-semaphore-like mutex, and dining philosophers.
;; Demonstrate use of parameters with actors.
;; Per https://github.com/tonyg/syndicate/issues/10, "Parameters don't
;; A Queue with no flow control.
;; A Queue with credit-based flow control.
;; Explore use of sandboxes etc for being an "operating system"
;; Demonstrates that fields may not be passed between actors.
(spawn #:name 'reading-actor
;; Demonstrates that fields at actor scope are visible to facets.
(spawn* (field [x 123])