Commit Graph

27 Commits

Author SHA1 Message Date
Tony Garnock-Jones 51a28b9349 Fix bug where `this` was referring to the fields of a parent facet, not the facet currently being constructed 2016-12-06 05:53:06 +13:00
Tony Garnock-Jones 138bab9ba6 actor{react{...}} ==> actor{...} for JS 2016-08-25 13:12:32 +01:00
Tony Garnock-Jones 6443e9dadd Only repair damage to subjects on non-terminated facets 2016-08-07 21:58:24 -04:00
Tony Garnock-Jones e3520ac711 Coalesce adjacent patch actions from a given pid 2016-08-07 21:58:24 -04:00
Tony Garnock-Jones 2c78d1ad0a Allocate Facet fids for debugging 2016-08-07 21:58:24 -04:00
Tony Garnock-Jones 3977e57b38 Switch back from Actor.current, using Dataspace.activeBehavior() instead 2016-08-07 21:58:23 -04:00
Tony Garnock-Jones eaade6e4fd Treat synthetic patches differently wrt previousKnowledge 2016-08-07 21:58:19 -04:00
Tony Garnock-Jones 41693b897c Hook dataflow.js into Syndicate/js; add "during ... actor { ... }" 2016-08-07 15:33:09 -04:00
Tony Garnock-Jones 736c93ea94 Fix typo 2016-06-05 13:14:54 -04:00
Tony Garnock-Jones fba4aaa6b4 Support debug names for actors (any JSON term) 2016-05-18 16:51:51 -04:00
Tony Garnock-Jones 6160012576 Maintain separation between terminate and handleEvent phases; fixes bug. 2016-05-17 20:50:11 -04:00
Tony Garnock-Jones 9312a28226 Only fire asserted/retracted when first/last interest (dis)/appears; same intent as yesterday's commit b1f7816 2016-05-17 20:04:37 -04:00
Tony Garnock-Jones 1aead77a72 Do facet terminate() phase before handleEvent() phase 2016-05-15 16:16:36 -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 e55e19d5e4 Add "on event ID BLOCK" support 2016-05-14 19:06:00 -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 b8e076188c Protect init and done blocks with withCurrentFacet. 2016-05-10 17:02:31 -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 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 7fcfa9586b Rename "network" to "dataspace" throughout 2016-04-07 09:42:54 +02:00
Tony Garnock-Jones 64cbe51578 demo-filesystem.js and attendant fixes 2016-03-20 21:01:17 -04:00
Tony Garnock-Jones e4ae3b1f95 Check for termination of an actor after each event and after boot. 2016-03-19 14:47:39 -04:00
Tony Garnock-Jones d87118f686 Support risingEdge transition events 2016-03-19 13:48:49 -04:00
Tony Garnock-Jones adaf9511bf Init and done blocks. 2016-03-18 17:13:52 -04:00
Tony Garnock-Jones 3c124633b3 Terminate actors when they have no more facets left. 2016-03-18 17:08:49 -04:00
Tony Garnock-Jones 3785cebdf2 Syndicate/js HLL Ohm-based compiler. 2016-03-18 17:00:51 -04:00