Commit Graph

46 Commits

Author SHA1 Message Date
Tony Garnock-Jones a648ab7c8a Command-line control of nickname in server-chat-client 2019-06-11 18:34:25 +01:00
Tony Garnock-Jones 65c99e24b4 Line-based buffering of stdout in server-chat-client 2019-06-11 18:34:14 +01:00
Tony Garnock-Jones 06362c6674 Change federation protocol to be transport-neutral, carried via Syndicate itself 2019-05-16 22:28:42 +01:00
Tony Garnock-Jones bcc7848e76 Move away from use of "broker" 2019-05-16 20:14:19 +01:00
Tony Garnock-Jones 9839e5946c 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 82e327e21f Allow specification of host/port/scope in server-chat-client.rkt 2019-05-09 11:16:29 +01:00
Tony Garnock-Jones 611be53725 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 28fd0809e0 The Great Renaming broker -> server, part 2 2019-05-05 16:51:23 +01:00
Tony Garnock-Jones 9f03dbb6d3 The Great Renaming broker -> server, part 1 2019-05-05 16:37:03 +01:00
Tony Garnock-Jones bc5c26ba1d Support transformations (e.g. rotation) in the scene prelude 2019-04-25 12:58:30 +01:00
Tony Garnock-Jones 25d3656e09 strong-gensym 2019-03-24 17:16:57 +00:00
Tony Garnock-Jones 239b0810e5 broker: client; ping for keepalive; client example 2019-03-18 23:29:12 +00:00
Tony Garnock-Jones 3bfef265a5 tcp-rejected; reassert-on 2019-03-18 23:27:59 +00:00
Tony Garnock-Jones fd8a749cd0 NOTICE support 2019-02-09 10:36:03 +00:00
Tony Garnock-Jones 31dc143437 Cope with libpurple weirdness 2019-02-05 13:37:18 +00:00
Tony Garnock-Jones 91bf17f57e Force membership of channel on login 2019-02-05 13:37:04 +00:00
Tony Garnock-Jones fa0a0c0c4d PASS; better NICK collision avoidance 2019-02-05 13:30:18 +00:00
Tony Garnock-Jones 0835257e1c Nested reloaders; simple greeter 2019-01-30 16:40:52 +00:00
Tony Garnock-Jones 363995a9c0 Scriptlet for starting a client 2019-01-29 23:08:04 +00:00
Tony Garnock-Jones 9215682e5c /LIST 2019-01-29 20:47:17 +00:00
Tony Garnock-Jones 894ae9d238 User count; define/query-count 2019-01-29 20:47:06 +00:00
Tony Garnock-Jones f306fface5 Pinned channels 2019-01-29 20:46:38 +00:00
Tony Garnock-Jones f6d0c6868e Parity with the other version 2019-01-28 13:54:18 +00:00
Tony Garnock-Jones 97376bc67c Ported ircd example to imperative-syndicate 2019-01-28 13:50:49 +00:00
Tony Garnock-Jones 57d7ec505d Ensure patched assertions are added before being removed, to avoid glitching 2018-11-02 00:38:40 +00:00
Tony Garnock-Jones 143abcf4c1 Separate out narration 2018-10-24 16:14:54 +01:00
Tony Garnock-Jones dd8a7861d4 The problem specifies 10 elves 2018-10-24 14:29:10 +01:00
Tony Garnock-Jones ce706583e5 Santa Claus Problem, in Syndicate/rkt 2018-10-24 11:40:16 +01:00
Tony Garnock-Jones 181e6a87a0 sqlite driver 2018-08-29 15:03:12 +01:00
Tony Garnock-Jones 41a4593183 Improve example 2018-08-15 10:11:07 +01:00
Tony Garnock-Jones 8a34bf20d8 Initial quasi-port of Syndicate/rkt web driver 2018-08-14 17:58:36 +01:00
Tony Garnock-Jones 11f28e13e2 UDP and UDP multicast 2018-08-13 20:07:27 +01:00
Tony Garnock-Jones 939b0620ed filesystem driver 2018-05-11 09:58:25 +01:00
Tony Garnock-Jones a391b0ff24 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 5cd8e2c2cb Add missing assertion for outbound connections. 2018-05-06 11:03:39 +01:00
Tony Garnock-Jones 12d4e95ac4 GUI example 2018-05-04 16:57:22 +01:00
Tony Garnock-Jones 59e1a09d61 Clock face example 2018-05-04 16:09:12 +01:00
Tony Garnock-Jones f9af2de438 Actually-useful instantaneous frame rate measurement 2018-05-01 22:40:12 +01:00
Tony Garnock-Jones 15120a8488 A few names for unnamed actors make it clear which actor is faulting 2018-05-01 21:19:19 +01:00
Tony Garnock-Jones 76c74f25c2 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 7b05a25301 First sketch of `quit-dataspace!`. 2018-05-01 21:12:54 +01:00
Tony Garnock-Jones f4681c21a1 gl-2d driver and examples 2018-05-01 17:39:17 +01:00
Tony Garnock-Jones 8bed3d4d4c 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 98b7aecd8f External-event and TCP drivers; chat server and stdin echo programs 2018-04-29 18:43:39 +01:00
Tony Garnock-Jones 8900eccb1e Nested dataspaces 2018-04-29 14:54:14 +01:00
Tony Garnock-Jones 71756d8d40 First stab at #lang infrastructure 2018-04-29 12:22:12 +01:00