Commit Graph

46 Commits

Author SHA1 Message Date
Tony Garnock-Jones be0dc5413b Command-line control of nickname in server-chat-client 2019-06-11 18:34:25 +01:00
Tony Garnock-Jones 052be5c58e Line-based buffering of stdout in server-chat-client 2019-06-11 18:34:14 +01:00
Tony Garnock-Jones 94e27e1cbc Change federation protocol to be transport-neutral, carried via Syndicate itself 2019-05-16 22:28:42 +01:00
Tony Garnock-Jones 84361dcbaf Move away from use of "broker" 2019-05-16 20:14:19 +01:00
Tony Garnock-Jones ae97fb1d1e Flow-controlled TCP (except in netstack); flow-controlled server/federation messages; fixes federation startup glitching 2019-05-12 13:07:38 +01:00
Tony Garnock-Jones 0dca5bfbe3 Allow specification of host/port/scope in server-chat-client.rkt 2019-05-09 11:16:29 +01:00
Tony Garnock-Jones cf92ae14c5 Select client/server scope on connect; stub out federation/peering; protocol error and disconnection support 2019-05-07 12:56:40 +01:00
Tony Garnock-Jones db523a8974 The Great Renaming broker -> server, part 2 2019-05-05 16:51:23 +01:00
Tony Garnock-Jones f2b29a798a The Great Renaming broker -> server, part 1 2019-05-05 16:37:03 +01:00
Tony Garnock-Jones 419bd093d1 Support transformations (e.g. rotation) in the scene prelude 2019-04-25 12:58:30 +01:00
Tony Garnock-Jones 8a5d91a175 strong-gensym 2019-03-24 17:16:57 +00:00
Tony Garnock-Jones 3ff50a6f65 broker: client; ping for keepalive; client example 2019-03-18 23:29:12 +00:00
Tony Garnock-Jones 4e33429b19 tcp-rejected; reassert-on 2019-03-18 23:27:59 +00:00
Tony Garnock-Jones f4f3b67cdf NOTICE support 2019-02-09 10:36:03 +00:00
Tony Garnock-Jones 94c66094e6 Cope with libpurple weirdness 2019-02-05 13:37:18 +00:00
Tony Garnock-Jones 21131dc02c Force membership of channel on login 2019-02-05 13:37:04 +00:00
Tony Garnock-Jones c5848e4c0b PASS; better NICK collision avoidance 2019-02-05 13:30:18 +00:00
Tony Garnock-Jones 823754c8b5 Nested reloaders; simple greeter 2019-01-30 16:40:52 +00:00
Tony Garnock-Jones 636055cbea Scriptlet for starting a client 2019-01-29 23:08:04 +00:00
Tony Garnock-Jones 1e3e978e36 /LIST 2019-01-29 20:47:17 +00:00
Tony Garnock-Jones 7e2284ac11 User count; define/query-count 2019-01-29 20:47:06 +00:00
Tony Garnock-Jones 9c5d9768b4 Pinned channels 2019-01-29 20:46:38 +00:00
Tony Garnock-Jones ed0307d4e5 Parity with the other version 2019-01-28 13:54:18 +00:00
Tony Garnock-Jones bd5f2d8a1b Ported ircd example to imperative-syndicate 2019-01-28 13:50:49 +00:00
Tony Garnock-Jones bc4fb5ef94 Ensure patched assertions are added before being removed, to avoid glitching 2018-11-02 00:38:40 +00:00
Tony Garnock-Jones 22b4f965b9 Separate out narration 2018-10-24 16:14:54 +01:00
Tony Garnock-Jones 84298d5571 The problem specifies 10 elves 2018-10-24 14:29:10 +01:00
Tony Garnock-Jones 6ba3734d9d Santa Claus Problem, in Syndicate/rkt 2018-10-24 11:40:16 +01:00
Tony Garnock-Jones f6ab8320c5 sqlite driver 2018-08-29 15:03:12 +01:00
Tony Garnock-Jones c125564f5f Improve example 2018-08-15 10:11:07 +01:00
Tony Garnock-Jones 061765041b Initial quasi-port of Syndicate/rkt web driver 2018-08-14 17:58:36 +01:00
Tony Garnock-Jones 86412b273d UDP and UDP multicast 2018-08-13 20:07:27 +01:00
Tony Garnock-Jones ea16d24be8 filesystem driver 2018-05-11 09:58:25 +01:00
Tony Garnock-Jones 43f1eab1f3 Port netstack to imperative-syndicate.
If you change `racket-bitsyntax` to use `typed/racket/base/no-check`
for its `bitstring.rkt` module, this runs about 15x faster than the
`syndicate` version of the stack. Otherwise, it runs about 3x faster
than the `syndicate` version of the stack.
2018-05-06 15:28:41 +01:00
Tony Garnock-Jones 9fc621c829 Add missing assertion for outbound connections. 2018-05-06 11:03:39 +01:00
Tony Garnock-Jones d053edc101 GUI example 2018-05-04 16:57:22 +01:00
Tony Garnock-Jones 1868b10617 Clock face example 2018-05-04 16:09:12 +01:00
Tony Garnock-Jones 74cb70bdf3 Actually-useful instantaneous frame rate measurement 2018-05-01 22:40:12 +01:00
Tony Garnock-Jones c85f05ced1 A few names for unnamed actors make it clear which actor is faulting 2018-05-01 21:19:19 +01:00
Tony Garnock-Jones bbcb8a3b80 Adapt platformer to imperative-syndicate. Mostly working!
It's also nicely fast compared to the old-Syndicate version :-)

There are still some problems with parameters in cross-ds relaying;
the symptom is #f for (current-facet) at some point, leading to some
sprites that don't get retracted (!).
2018-05-01 21:15:22 +01:00
Tony Garnock-Jones 869a495392 First sketch of `quit-dataspace!`. 2018-05-01 21:12:54 +01:00
Tony Garnock-Jones 2b2d12075a gl-2d driver and examples 2018-05-01 17:39:17 +01:00
Tony Garnock-Jones a6811f2ba5 Add timer/timestate support; this prompted a change to endpoint registration.
The `add-endpoint!` call is changed in two ways:

 - the old `assertion-fn` has become `update-fn`, yielding both
   an assertion *and* an optional handler, because if the handler
   depends on a field which changes, previously the handler wasn't
   being updated

 - a new parameter, `dynamic?`, can be set to #f (it's usually #t)
   to ensure that the assertion and skeleton-interest are calculated
   only once ever, and are not connected to the dataflow machinery.

The first change makes it possible for the `(later-than (deadline))`
pattern, where `deadline` is a field, to work; the second change makes
`during` and `during/spawn` work correctly in the face of field
updates.
2018-04-29 22:27:55 +01:00
Tony Garnock-Jones 91596b066f External-event and TCP drivers; chat server and stdin echo programs 2018-04-29 18:43:39 +01:00
Tony Garnock-Jones dd2cddb6a7 Nested dataspaces 2018-04-29 14:54:14 +01:00
Tony Garnock-Jones 204197c3eb First stab at #lang infrastructure 2018-04-29 12:22:12 +01:00