Commit Graph

32 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 23f269fba6 Use Syndicate.Timer in SVG example 2016-05-11 11:13:14 -04:00
Tony Garnock-Jones 4a2c8147aa Enable and disable the IoT demo spawn/kill buttons.
Previous commit changed DOM fragment representation to use strings
instead of Seal'd quasi-sexprs, and so eliminated any distinction
between textually-identical DOM fragments in the dataspace.

This patch disables the "spawn" buttons for components in the IoT demo
to avoid (mostly harmless) duplication of actor instances.

It also demonstrates use of react{} outside a *lexically*-enclosing
actor{}.
2016-05-10 22:40:49 -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 e54b6566f5 Use Timer driver in IoT example. 2016-05-10 17:04:39 -04:00
Tony Garnock-Jones 00b0ef63eb SVG example. 2016-05-10 15:33:02 -04:00
Tony Garnock-Jones b24cd754b0 Set default chat broker url 2016-05-10 01:14:32 -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
Tony Garnock-Jones abc844c964 Dataspace.setOnStateChange, to correctly call it at least once 2016-05-09 13:18:19 -04:00
Tony Garnock-Jones 5c5da4e569 Avoid using assert/retract directly in IoT alerting 2016-05-08 12:25:28 -04:00
Tony Garnock-Jones 6591091bb6 Drastically simplify IoT TV 2016-05-08 12:20:08 -04:00
Tony Garnock-Jones 9c5f427366 Split and rename route.js into trie.js, struct.js and special.js 2016-05-08 11:33:39 -04:00
Tony Garnock-Jones 062e4603af Convert Syndicate/js to use prefix-style trie 2016-05-08 11:11:29 -04:00
Tony Garnock-Jones 6078b81289 IoT example illustration 2016-05-04 14:00:42 -04:00
Tony Garnock-Jones 21a53ba948 IoT example 2016-05-02 17:13:25 -04:00
Tony Garnock-Jones 7fcfa9586b Rename "network" to "dataspace" throughout 2016-04-07 09:42:54 +02:00
Tony Garnock-Jones d149ec57ea Intro text on examples page. 2016-04-06 18:27:46 +02:00
Tony Garnock-Jones 7fb0c33660 Describe DOM example. 2016-04-06 18:21:57 +02:00
Tony Garnock-Jones 8e0906d918 Deployment of examples; example descriptions. 2016-04-06 15:29:27 +02:00
Tony Garnock-Jones 0d2e89e309 Include expanded code 2016-03-22 12:14:30 -04:00
Tony Garnock-Jones e7c7a7cdfa Button example 2016-03-22 12:11:56 -04:00
Tony Garnock-Jones 761f5652af Two simple in-browser examples 2016-03-19 15:06:23 -04:00
Tony Garnock-Jones 0e7a6375e9 Escape text, and make spaces display properly. 2016-02-07 14:25:52 -05:00
Tony Garnock-Jones df0ff273b1 Mostly-working textfield example. 2016-02-06 22:05:25 -05:00
Tony Garnock-Jones 6d028f00c5 Seal DOMFragment specifications. 2016-02-06 15:06:59 -05:00
Tony Garnock-Jones 3489b5fab7 DOM driver. 2016-02-06 07:42:31 -05:00
Tony Garnock-Jones f06d951dcb Support Network onStateChange callback. 2016-02-06 07:40:46 -05:00
Tony Garnock-Jones 9d7dd37a37 demand-matcher.js, jquery-driver.js 2016-02-06 06:22:49 -05:00
Tony Garnock-Jones bfd8203a7a use strict 2016-02-02 21:11:50 -05:00
Tony Garnock-Jones 9f69cffbe7 Ground network; minor refactorings and bugfixes; smoketest example 2016-02-02 21:02:55 -05:00