Tony Garnock-Jones
1ab4f0f525
Alternate approach to caching
2017-12-06 09:13:28 +00:00
Tony Garnock-Jones
f11f4fd054
tcp-relay2.rkt
2017-12-05 17:38:49 +00:00
Tony Garnock-Jones
eb44003317
New examples
2017-12-05 17:32:12 +00:00
Tony Garnock-Jones
eb564fdb7c
More general tcp-connect error catching.
2017-12-05 17:22:28 +00:00
Tony Garnock-Jones
c9ec9f6be9
Special printer for seals. Fixes #27 .
2017-12-05 17:22:13 +00:00
Tony Garnock-Jones
75093d0e1a
Fullscreen big-bang
2017-11-25 12:03:32 -05:00
Tony Garnock-Jones
53e26b08a1
Many improvements to the netstack TCP implementation.
...
- New timestate `on-timeout` complementing `stop-when-timeout`
- IP layer avoids spurious reordering
- Demo HTTP server sends 4kB responses, for testing
- TCP now has something closer to proper sliding-window behavior
- TCP RTT estimator
- TCP now uses timestate driver rather than raw timer driver
- Many small TCP bugs found and fixed
2017-11-13 20:02:07 +00:00
Tony Garnock-Jones
710e75dffa
cleanup.rkt
2017-10-31 17:00:09 +00:00
Tony Garnock-Jones
d51a513f8b
add1-simple.rkt
2017-10-21 14:56:46 +01:00
Tony Garnock-Jones
bf0eb16643
syndicate-render-msd: --number, --no-number, --number-gap
2017-10-21 14:55:28 +01:00
Tony Garnock-Jones
8999b8446d
Use tcp-in-line in chat-tcp2.rkt
2017-10-21 14:54:53 +01:00
Tony Garnock-Jones
fa82634868
ceu-leds.rkt
2017-10-20 16:25:16 +01:00
Tony Garnock-Jones
45eee62fc2
chat-bot.rkt
2017-10-20 11:54:04 +01:00
Tony Garnock-Jones
5904a2f956
Tweak chat-tcp2.rkt
2017-10-19 17:12:01 +01:00
Tony Garnock-Jones
32d1274a8d
Expose field-ref/field-set!, for the f-to-c examples I committed just previously
2017-10-17 21:21:58 +01:00
Tony Garnock-Jones
18b3ab0d97
Two equations are better than one blob
2017-10-17 21:21:27 +01:00
Tony Garnock-Jones
fc0e900485
New variations on f-to-c
2017-10-17 18:49:26 +01:00
Tony Garnock-Jones
0526364698
web-request-send!
2017-10-13 13:52:45 +01:00
Tony Garnock-Jones
70a56e6457
Allow stop-current-facet to take scripts to execute, like stop-facet
2017-10-12 13:59:11 +01:00
Tony Garnock-Jones
22998de0dc
tcp2 line-reader
2017-10-11 22:22:29 +01:00
Tony Garnock-Jones
801470ebaa
tcp2
2017-10-11 14:45:54 +01:00
Tony Garnock-Jones
66e2e8b1a7
Fix race condition (!) in timer driver
2017-10-03 10:49:48 +01:00
Tony Garnock-Jones
14f1cbd4fa
Remove obsolete call to current-inexact-milliseconds
2017-10-03 10:08:44 +01:00
Tony Garnock-Jones
275b60310f
Positively assert detected failures during continuous interest
2017-10-02 14:31:58 +01:00
Tony Garnock-Jones
ca0de7d52f
running-total.rkt
2017-10-01 15:27:58 +01:00
Tony Garnock-Jones
16bd0155cc
Terminal-based IRC client
2017-10-01 11:08:46 +01:00
Tony Garnock-Jones
eb07be548e
Bug fix: retract names on part
2017-10-01 11:08:36 +01:00
Tony Garnock-Jones
5254feb4de
rpc-with-error.rkt
2017-09-30 21:24:43 +01:00
Tony Garnock-Jones
db333a266f
Tweaks to udp-echo.rkt
2017-09-29 17:34:40 +01:00
Tony Garnock-Jones
d96477b9db
udp-echo.rkt
2017-09-29 17:23:07 +01:00
Tony Garnock-Jones
0599f974b9
all-pairs-shortest-paths3.rkt
2017-09-29 15:43:02 +01:00
Tony Garnock-Jones
4f52ebf108
Simplify make.rkt slightly
2017-09-29 13:13:57 +01:00
Tony Garnock-Jones
fa257a1d16
Avoid accidental n^2 in filesystem driver; make.rkt example
2017-09-28 19:28:38 +01:00
Tony Garnock-Jones
7a4d528dc0
Another timestate example
2017-09-28 17:41:17 +01:00
Tony Garnock-Jones
4a51141500
Simplify timestate driver
2017-09-28 17:07:32 +01:00
Tony Garnock-Jones
51ab2921c2
New examples
2017-09-28 16:26:01 +01:00
Tony Garnock-Jones
e41290c509
simple-cross-layer.rkt
2017-09-25 23:56:03 +01:00
Tony Garnock-Jones
6c4ae38499
Make HLL `dataspace` no longer automatically `quit-dataspace`. Fixes #20 .
2017-09-25 23:52:29 +01:00
Tony Garnock-Jones
903ed5deaa
Omit empty patches in render-msd
2017-09-18 16:14:22 +01:00
Tony Garnock-Jones
96331e0cfd
More flip-flop tweaks
2017-09-15 21:46:39 +01:00
Tony Garnock-Jones
e124983e05
Print differently in flip-flop
2017-09-15 21:45:54 +01:00
Tony Garnock-Jones
a82b428f44
racket/syndicate/examples/actor/flip-flop.rkt
2017-09-15 20:34:16 +01:00
Tony Garnock-Jones
516f6a5cd2
message-struct and assertion-struct
2017-09-13 19:08:01 +01:00
Tony Garnock-Jones
6a436f4c12
Fiddle with spacing of MSD renders
2017-09-03 11:44:21 +01:00
Tony Garnock-Jones
5ce1cec2ea
Better comments.
2017-08-27 08:18:11 -04:00
Tony Garnock-Jones
d0e803ac41
Update renders
2017-08-27 07:50:17 -04:00
Tony Garnock-Jones
0acd504d05
Demonstrate the general insufficiency of the approach of commit 2a0197b
2017-08-27 07:50:09 -04:00
Tony Garnock-Jones
e0dc583f51
Improve MSD rendering
2017-08-27 07:46:01 -04:00
Tony Garnock-Jones
2a0197b711
Fix responsibility-handoff for TCP listener.
...
Similar problems likely still exist elsewhere that the LLL
demand-matcher is used.
2017-08-22 16:53:57 -04:00
Tony Garnock-Jones
930e4270b4
Better defaults; print defaults accurately
2017-08-22 16:44:07 -04:00
Tony Garnock-Jones
88d324929d
Command-line tool, syndicate-render-msd
2017-08-14 17:20:36 -04:00
Tony Garnock-Jones
8cbabafbab
Fix #21 , long-standing mismatch in assumptions in LLL demand-matcher.
...
The LLL demand-matcher has two pieces: a `default-task-supervisor`
which does the work of figuring out what to do for a given change in
an instance of demand, and a driver which computes demand instances
and calls `default-task-supervisor` for each.
An `actions` accumulator is threaded through the
`default-task-supervisor` calls. However, the driver code mistakenly
believed that the result of `default-task-supervisor` calls was a
collection of fresh actions only, and therefore consed together the
previous collection of actions with the "new" ones. Because the
`default-task-supervisor` was returning an unmodified accumulator from
time to time, any actions in the accumulator across a call to
`default-task-supervisor` would end up duplicated.
This change favours the thread-the-accumulator-through perspective,
and changes the way the driver uses `new-actions` to match.
2017-08-14 17:17:49 -04:00
Tony Garnock-Jones
cb3eee64dc
Avoid serialization problems for exceptions
2017-08-13 22:40:28 -04:00
Tony Garnock-Jones
b2e2674f44
Support opening/closing the MSD trace file with SIGUSR1
2017-08-13 22:14:45 -04:00
Tony Garnock-Jones
3db51ffda5
Track quits differently
2017-08-13 22:13:44 -04:00
Tony Garnock-Jones
fdcd9b9388
Remove unused commented-out code
2017-08-13 20:52:52 -04:00
Tony Garnock-Jones
e2d1ae853c
Avoid (cdr '()) for patches from drivers - for msd.rkt this time
2017-08-13 20:52:29 -04:00
Tony Garnock-Jones
af30c19ee0
Remove unused debug
2017-08-13 20:47:47 -04:00
Tony Garnock-Jones
f3b5fd6cd1
Avoid (cdr '()) for patches from drivers
2017-08-13 20:47:40 -04:00
Tony Garnock-Jones
6728fcf10d
Extra knobs
2017-08-13 20:08:09 -04:00
Tony Garnock-Jones
09d0fb620d
Much improved tracing
2017-08-13 19:58:48 -04:00
Tony Garnock-Jones
84ec153a1e
Extract utilities for tracing
2017-08-12 00:40:10 -04:00
Tony Garnock-Jones
4efe18bfe0
Trace action production as well as interpretation
2017-08-12 00:08:09 -04:00
Tony Garnock-Jones
9009fb5ec7
Stay rational
2017-08-10 17:40:15 -04:00
Tony Garnock-Jones
40961e7893
f-to-c3.rkt
2017-08-10 17:08:31 -04:00
Tony Garnock-Jones
b3a745dbcb
Make #lang syndicate equivalent to #lang syndicate/actor. Fixes #17 .
2017-08-10 15:17:28 -04:00
Tony Garnock-Jones
c9996d53ae
Avoid premature termination of parent facet.
...
Scenario:
- In script of facet X, (react (stop-when E (react ...)))
- This creates facet Y, child of X.
- Facet X has no endpoints, only its child facet Y.
- When the stop-when fires, without this patch, facet X
will be terminated because the *inner* react above hasn't executed yet.
- With this patch, the check for a useless X is done after the stop-when
has had a chance to run; and so X will survive for now.
2017-08-10 15:08:48 -04:00
Tony Garnock-Jones
837ab77002
#lang syndicate -> #lang syndicate/core; first half of fix for #17 .
2017-08-10 15:04:45 -04:00
Tony Garnock-Jones
6b3f8d920a
Key debouncer
2017-08-07 13:41:01 -04:00
Tony Garnock-Jones
61b683fc94
double-click "debouncing" example
2017-08-07 13:04:10 -04:00
Tony Garnock-Jones
4f8bc6e5af
Ugh, forgot to git-add this
2017-08-07 11:21:09 -04:00
Tony Garnock-Jones
4f21e9ab46
Elide spurious detail in patch actions and events
2017-08-05 19:38:35 -04:00
Tony Garnock-Jones
5bff630547
Support t and T SYNDICATE_TRACE flags, for control over state display
2017-08-05 19:38:17 -04:00
Tony Garnock-Jones
f83f286e28
Name the line-reader-factory
2017-08-05 19:37:34 -04:00
Tony Garnock-Jones
11de40ce98
Change spawn processing to include initial-assertions
2017-08-05 19:36:40 -04:00
Tony Garnock-Jones
f9a477832a
Avoid identifier clash
2017-08-05 19:36:40 -04:00
Tony Garnock-Jones
75aee96e1a
query-count
2017-08-01 17:45:19 -04:00
Tony Garnock-Jones
6b2ee53fa8
Give line-reader instances a debug-name
2017-08-01 09:30:53 -04:00
Sam Caldwell
5f621b098e
trie-step-wild
2017-07-31 11:39:50 -04:00
Tony Garnock-Jones
81a0351828
Cope with potential interference in query-sets (etc) from outside the official event handlers
2017-07-30 18:48:33 -04:00
Tony Garnock-Jones
6e399dd1dd
Experimental Racket GUI driver.
2017-07-29 23:17:55 -04:00
Tony Garnock-Jones
28f6b8acf8
Finally committing the f-to-c examples of Sep 23, 2016
2017-07-27 10:40:11 -04:00
Tony Garnock-Jones
a090ed8330
*gc-priority* has been unused since factoring away cross-facet restrictions on fields
2017-07-12 14:25:42 -04:00
Tony Garnock-Jones
8a2ace112b
Handle additional cases: children present, and obsolescent parent. Additional fix for #18
2017-07-12 11:38:27 -04:00
Tony Garnock-Jones
f6c145b4a7
Fix poor on-stop/post-stop separation. Additional fix for #23 .
2017-07-12 11:36:20 -04:00
Tony Garnock-Jones
46e5922dc8
Stop a new facet with no endpoints. Fixes #18 .
2017-07-12 11:12:10 -04:00
Tony Garnock-Jones
6db1e67a7e
Beginnings of test case for termination order
2017-07-12 11:03:23 -04:00
Tony Garnock-Jones
76c1a5b347
Tentative repair to startup/shutdown ordering problems
2017-07-12 11:02:26 -04:00
Tony Garnock-Jones
990ad4ca72
Pretty-print struct process instances
2017-07-12 10:29:26 -04:00
Tony Garnock-Jones
3073d8b614
Avoid some stop-when/rising-edge/flag combinations, and some rising-edge uses generally
2017-07-05 07:13:36 -04:00
Tony Garnock-Jones
37cee0c937
(stop-current-facet)
2017-07-05 06:28:06 -04:00
Tony Garnock-Jones
ac5c5d2e5f
First steps toward correct facet-termination.
...
- Facet IDs are now lists so arbitrary ancestors can be computed with
repeated application of cdr
- `stop-facet` is new and untested, other than that `stop-when` is
refactored to use `stop-facet`
- *all* matching stop-when instances run now; the limitation that
exactly one instance should match is lifted.
- roughly, (stop-when E X ...) === (on E (stop (current-facet-id) X ...))
Remaining to be done: fix `terminate-facet!` to do the right things in
the right order.
2017-07-04 22:03:32 -04:00
Tony Garnock-Jones
1fdd62d56d
Remove enforcement of field scoping rules dating back to separate-actor implementation of HLL
2017-07-04 16:31:46 -04:00
Tony Garnock-Jones
46fd5e2b92
Remove/unprovide a few unneeded utilities from patch.rkt
2017-06-23 17:57:35 -04:00
Tony Garnock-Jones
9b54069ecd
chat-multiroom-topic-persist.rkt
2017-05-12 19:21:41 -04:00
Tony Garnock-Jones
42742fe8ac
chat-multiroom-topic.rkt
2017-05-12 18:55:32 -04:00
Tony Garnock-Jones
966cd2ed17
Comment
2017-05-12 17:14:18 -04:00
Tony Garnock-Jones
4be0a8cb59
chat-multiroom.rkt
2017-05-12 15:45:38 -04:00
Tony Garnock-Jones
b9dfd79f34
example-bug-rising-edge-true.rkt
2017-05-04 09:08:47 -04:00
Sam Caldwell
6448188e82
Create test harness & lang for contrasting big & little actor langs
2017-04-20 13:50:01 -04:00