Tony Garnock-Jones
eea8c8ecfe
Tweak
2018-10-24 12:44:24 +01:00
Tony Garnock-Jones
34723d6f2c
The Santa Claus Problem in Syndicate.js
2018-10-24 12:39:39 +01:00
Tony Garnock-Jones
06224b52a8
Repair syndicate/js just like commit 1fa5167
repaired syndicate/rkt.
2018-03-27 22:21:14 +13:00
Sam Caldwell
1134ed0eff
Rename `actor` to `spawn` in syndicate.js
...
similarly for actor* and during actor
2017-02-16 14:38:56 -05:00
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
183f104ade
Optional initialiser in field declaration, to match examples (!)
2016-08-07 17:34: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
4138495ae1
Fix mistake in invoking translateNonTerminalCode
2016-08-01 16:45:32 -04:00
Tony Garnock-Jones
9644aa3ad1
Fixes to code-generation in Syndicate/js compiler.
...
1. Repair .buildSubscription(mode) so it doesn't delete spaces in
unchanged ES5 code.
2. Avoid ',' between successive translated clauses in a
FacetStateTransitionBlock.
2016-07-11 12:02:40 -04:00
Tony Garnock-Jones
03616226e1
Run in-browser translated code in the same context as precompiled code.
2016-06-11 07:01:30 -04:00
Tony Garnock-Jones
0b964bb1bb
Compute `retracted` pattern just once during `during`. Avoids mutation-related bug.
2016-06-11 06:59:59 -04:00
Tony Garnock-Jones
02f4f9f89c
Allow function declarations
2016-06-05 16:01:24 -04:00
Tony Garnock-Jones
56324db6f6
Oops
2016-06-05 14:52:40 -04:00
Tony Garnock-Jones
f8116ee8eb
Support var decls in facet blocks
2016-06-05 13:14:48 -04:00
Tony Garnock-Jones
d4e4cc6bd6
Improve error reporting by removing Statement rule description; correct typo
2016-05-27 18:45:32 -04:00
Tony Garnock-Jones
02d73f44fa
Disambiguate syndicate.ohm properly
2016-05-19 13:12:16 -04:00
Tony Garnock-Jones
4c1d6814d9
Cosmetic
2016-05-18 16:52:06 -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
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
e55e19d5e4
Add "on event ID BLOCK" support
2016-05-14 19:06:00 -04:00
Tony Garnock-Jones
7b26b4bf14
Switch to FunctionBody from plain Block, to allow function definitions.
2016-05-12 00:01:09 -04:00
Tony Garnock-Jones
7b9f5a54e8
Use "message type" in demo-*.js
2016-05-11 21:05:40 -04:00
Tony Garnock-Jones
0693e88031
Allow "message type ..." as well as "assertion type ...".
2016-05-11 10:59:27 -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
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
a428423ff2
Support when(...) clause in assert in facets.
2016-05-08 12:19:40 -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
a8b7de0d64
Support gaining access to the ground object
2016-03-19 15:06:07 -04:00
Tony Garnock-Jones
b9aa833186
Prefer parens around risingEdge transition condition
2016-03-19 14:50:08 -04:00
Tony Garnock-Jones
ce0b30dba6
Fix code generation problem
2016-03-19 14:49:54 -04:00
Tony Garnock-Jones
45d1de7358
Get in-browser compilation working using brfs
2016-03-19 14:49:44 -04:00
Tony Garnock-Jones
d87118f686
Support risingEdge transition events
2016-03-19 13:48:49 -04:00
Tony Garnock-Jones
e7de06c2d2
Remove spurious braces.
2016-03-19 13:01:23 -04:00
Tony Garnock-Jones
3b5a07f954
Split out compiler to separate syndicatec command
2016-03-19 13:01:14 -04:00