Tony Garnock-Jones
eafcff8f75
todomvc: Various additional features toward the spec
2016-05-17 13:03:08 -04:00
Sam Caldwell
e18b2a8062
todomvc: progress
2016-05-17 13:03:04 -04:00
Sam Caldwell
d316449538
todomvc: switch to new ui library
2016-05-17 13:01:09 -04:00
Tony Garnock-Jones
4acb32813e
todomvc: Initial steps
2016-05-17 13:01:03 -04:00
Tony Garnock-Jones
5c288036aa
Friendlier error when one accidentally asserts wildcard
2016-05-17 02:08:23 -04:00
Tony Garnock-Jones
791d2880ae
If a parent facet terminates, its children watch for this and terminate themselves.
2016-05-17 01:15:09 -04:00
Tony Garnock-Jones
1e84a3507d
Avoid use of racket/match for message matching in actors; makes abstracting over patterns easier
2016-05-17 01:14:48 -04:00
Tony Garnock-Jones
e3ff45b08e
Fix wildcard matcing in trie-lookup to properly prepend wilds for open-parens.
2016-05-17 01:11:00 -04:00
Tony Garnock-Jones
07ef4f108e
Improve printing of actor state
2016-05-17 01:10:26 -04:00
Tony Garnock-Jones
b1f7816418
Only fire (on (asserted)) when no previous matching assertions have been seen.
...
This makes (on (asserted)), (on (retracted)) and (during) behave as if
they are *grouping* by their named captures, which is what we want. It
gives a much easier to understand programming model. Note the
differences in execution of example-partial-retraction.rkt before and
after this patch. This patch gives example-partial-retraction.rkt, and
programs like it, a more natural behaviour.
2016-05-17 00:24:17 -04:00
Tony Garnock-Jones
3db6177ce9
Second listener, this one using during
2016-05-17 00:15:52 -04:00
Tony Garnock-Jones
d9b11566f5
example-partial-retraction.rkt
2016-05-17 00:09:18 -04:00
Tony Garnock-Jones
c7b62b109e
Slightly less noisy logging from broker by default
2016-05-16 14:18:44 -04:00
Tony Garnock-Jones
df7908d5a7
examples/motion
2016-05-15 20:41:44 -04:00
Tony Garnock-Jones
1aead77a72
Do facet terminate() phase before handleEvent() phase
2016-05-15 16:16:36 -04:00
Tony Garnock-Jones
61ca89ce04
Post-insertion configureNode()
2016-05-15 14:58:28 -04:00
Tony Garnock-Jones
152a76af5e
uiProperty
2016-05-15 14:58:13 -04:00
Tony Garnock-Jones
b92c439f07
Introduce selectorMatch and eventUpdater
2016-05-15 14:57:56 -04:00
Tony Garnock-Jones
6a204a9085
Process many internal cycles per wakeup; avoid reentrancy
2016-05-15 14:56:19 -04:00
Tony Garnock-Jones
51d9d4b64e
Track Actors' knowledge to properly initialize new facets
2016-05-15 14:55:48 -04:00
Tony Garnock-Jones
cd60353053
Remove obsolete definition.
2016-05-15 07:01:32 -04:00
Tony Garnock-Jones
74c663d5d4
Provide broker-scope and broker-data from server.rkt
2016-05-15 06:59:28 -04:00
Tony Garnock-Jones
81f9a0f0fe
Split host and port in websocket-remote-client and broker-scope.
2016-05-15 06:56:29 -04:00
Tony Garnock-Jones
c29ae059ff
Make sure to advertise presence even during connection establishment, since otherwise the user actor may hang indefinitely.
2016-05-15 06:55:39 -04:00
Tony Garnock-Jones
0f1fabddfb
Better logging of websocket connection failures.
2016-05-15 06:55:14 -04:00
Tony Garnock-Jones
931c54df6a
It is expected that outbound connection supply should drop.
2016-05-15 06:53:02 -04:00
Tony Garnock-Jones
1f8b3eeb3f
Attribute and property update/remove protocol
2016-05-15 06:14:31 -04:00
Tony Garnock-Jones
097641ffff
Name Structs for compatibility with Racket
2016-05-15 06:13:31 -04:00
Tony Garnock-Jones
0653bdae3c
key.instantiate needs an Array, not an Immutable.List
2016-05-15 06:12:37 -04:00
Tony Garnock-Jones
a55ed180db
Properly handle the first (interesting) patch after a broken connection.
2016-05-15 06:12:09 -04:00
Tony Garnock-Jones
b65291e789
Remove obsolete clean-patch function.
2016-05-15 06:11:04 -04:00
Tony Garnock-Jones
e7b0e15786
Support nested observation across broker protocol
2016-05-15 06:10:51 -04:00
Tony Garnock-Jones
ee120022a4
trie-step*
2016-05-15 06:10:31 -04:00
Tony Garnock-Jones
e55e19d5e4
Add "on event ID BLOCK" support
2016-05-14 19:06:00 -04:00
Tony Garnock-Jones
0561a02e78
onTaskExit, matching the Racket
2016-05-14 17:12:41 -04:00
Tony Garnock-Jones
7a4f1d8931
Update Racket demand-matcher to match improvements in the js version.
2016-05-14 17:07:50 -04:00
Tony Garnock-Jones
c7d91ac37f
Incorrect loop logic in updateEventListeners meant that nodes right at the end of the anchorNode were skipped.
2016-05-14 10:34:22 -04:00
Tony Garnock-Jones
bf532edd28
UIAttribute doesn't have fragmentId.
2016-05-14 02:26:24 -04:00
Tony Garnock-Jones
16365e7e95
Table example
2016-05-14 02:21:56 -04:00
Tony Garnock-Jones
35f0b75389
UIFragment orderBy, for features and speed
2016-05-14 02:21:43 -04:00
Tony Garnock-Jones
cfd7312293
More minor fixes
2016-05-13 20:50:20 -04:00
Tony Garnock-Jones
deae6c6d29
Fix spacing
2016-05-13 20:26:06 -04:00
Tony Garnock-Jones
372652c49d
Syndicate.UI.uiAttribute
2016-05-13 20:17:16 -04:00
Tony Garnock-Jones
f64491c0a7
Better use of console.warn and console.error in dataspace.js
2016-05-13 20:17:16 -04:00
Tony Garnock-Jones
628ba87c54
Rewrite JS DemandMatcher to handle important latency-related corner cases.
2016-05-13 20:14:01 -04:00
Tony Garnock-Jones
68cde5be6c
DemandMatcher: overlap not ruled out! Remove it.
2016-05-12 22:18:57 -04:00
Tony Garnock-Jones
b51e7f99d9
LocationHashTracker
2016-05-12 20:11:22 -04:00
Tony Garnock-Jones
6d305e6b00
Hoist .refresh out from .handleEvent; makes assertions depend on state that might have been changed in event handlers properly.
2016-05-12 17:37:14 -04:00
Tony Garnock-Jones
a433a054b8
Syndicate.UI.windowEvent
2016-05-12 15:56:42 -04:00
Tony Garnock-Jones
e0bd8d08c2
Re-register UIFragment event handlers on node replacement
2016-05-12 15:19:37 -04:00