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
Tony Garnock-Jones
425a5abac3
Default to empty-string to avoid crash when header entirely absent
2017-03-25 15:19:21 -04:00
Sam Caldwell
d4f95d3a7b
Allow creation of facets at the parent level when shutting down a facet
...
Behavior is fairly different from big implementation
2017-03-17 13:50:33 -04:00
Sam Caldwell
460d72d69e
Run new facets with current knowledge
2017-03-17 13:50:33 -04:00
Sam Caldwell
a8421f3929
actor -> spawn
2017-03-17 13:50:33 -04:00
Sam Caldwell
36ff30c289
No longer need to say `react` right after `actor`
2017-03-17 13:50:33 -04:00
Sam Caldwell
da422ff117
update field declaration syntax to match full impl
2017-03-17 13:50:32 -04:00
Sam Caldwell
88f515a98f
Change syntax of field accesses to match full implementation
2017-03-17 13:50:32 -04:00
Sam Caldwell
fb3918404c
fix exception handling for booting actors
2017-03-17 13:50:32 -04:00
Sam Caldwell
6ee97839fa
use racket functions to represent lambdas
2017-03-17 13:50:32 -04:00
Sam Caldwell
e57af91698
reorganize
2017-03-17 13:50:32 -04:00
Sam Caldwell
318363f4be
cleanup
2017-03-17 13:50:32 -04:00
Sam Caldwell
c8cc8051a1
don't run new facets asap
2017-03-17 13:50:32 -04:00
Sam Caldwell
34c3b6bf3a
fix ft-assertions
2017-03-17 13:50:32 -04:00
Sam Caldwell
90bf07f6d4
fixups
2017-03-17 13:50:32 -04:00
Sam Caldwell
079e2da53d
sort out relaying in hll interperter
2017-03-17 13:50:31 -04:00
Sam Caldwell
df40cc7ba9
fix race in trace testing
2017-03-17 13:50:31 -04:00
Sam Caldwell
3986f4d0ea
add trace testing
2017-03-17 13:50:31 -04:00
Sam Caldwell
e1671ce878
add on-stop
2017-03-17 13:50:31 -04:00
Sam Caldwell
da1f9d4b6d
MONADS
2017-03-17 13:50:31 -04:00
Sam Caldwell
5544052488
add lambda to hll interp
2017-03-17 13:50:31 -04:00
Sam Caldwell
7b1c102224
add dataspaces to hll interp
2017-03-17 13:50:31 -04:00
Sam Caldwell
1be415eb45
cleanup
2017-03-17 13:50:31 -04:00
Sam Caldwell
53cd60f196
run hll actors in two steps
...
first: run facets/endpoints to determine the new facet tree and any
actions (messages, spawns)
second: use new facet tree to determine assertions and subscriptions
This makes sure that all field updates are visible to
assertions/subscriptions.
2017-03-17 13:50:31 -04:00
Sam Caldwell
f19a02e859
catch exceptions from hll actors
2017-03-17 13:50:30 -04:00
Sam Caldwell
5a87428f62
partially working hll interpreter
2017-03-17 13:50:30 -04:00
Tony Garnock-Jones
118cdef4c6
Refactor other chat servers to match
2017-03-14 18:29:45 -04:00
Tony Garnock-Jones
689d410bda
Rearrange chat-simplified-internals2.rkt
2017-03-14 18:06:02 -04:00
Sam Caldwell
e0e7baed46
Keep ground dataspace running while subscriptions are present
2017-03-08 18:00:45 -05:00
Tony Garnock-Jones
dc83d33afb
Cosmetic
2017-03-08 06:45:40 -05:00
Tony Garnock-Jones
c51f18efc2
Compile lambda calculus into Syndicate
2017-03-08 06:37:27 -05:00