Commit Graph

5 Commits

Author SHA1 Message Date
Tony Garnock-Jones 0208ae7a7d A better UI library. Replaces DOM and jQuery support. 2016-05-11 21:03:11 -04:00
Tony Garnock-Jones dede7f08a7 Use strings-of-HTML and mustache.js for DOM fragments.
This avoids churn in the dataspace for no-op DOM updates, but at the
cost of losing the identity of multiple pieces of asserted DOM when
they end up being textually identical.

The fix is, generally, to make sure your DOM fragments are different
in some (perhaps invisible when rendered) way. Next commit updates the
IoT demo to avoid duplicate fragments.
2016-05-10 22:38:40 -04:00
Tony Garnock-Jones efc444ac37 forever => react, state => react, init => do, done => finally, until => react until 2016-05-10 18:49:12 -04:00
Tony Garnock-Jones 8f1d27c584 Move Codec and Broker into src/. 2016-05-10 00:57:05 -04:00
Tony Garnock-Jones 8546e93e5d Implement Syndicate/js broker-client and chat app.
Support capturing with a pattern in the Syndicate/js DSL: ($foo = bar())

Struct has been cleaned up, and now offers proper Javascript objects
for its prefab-like structures. These can serialize and deserialize
themselves to/from JSON. They behave like prefabs in that two
StructureTypes created with the same label and arity behave
identically wrt Dataspaces and Tries. Sadly, prefab field names had to
go in order to support this.

Facets now track and terminate their children upon termination. This
is experimental; I suspect it is required for nested durings.

DemandMatcher can now support multiple specs, but this is less useful
than you might think since it tracks supply and demand quite naively.
It would have to have (surprise, surprise!) a mux-like structure to do
the job properly!

Added WakeDetector to main.js; adding the broker client will have to
wait until it is turned into a proper module in the src/ directory.
2016-05-10 00:40:53 -04:00