Tony Garnock-Jones
9e3f804aae
I don't understand how elapsed-ms can end up negative, but I was seeing it in the platformer at frame 0
2016-07-30 14:49:05 -04:00
Tony Garnock-Jones
b6a03bdd9b
Tweak scribblings to silence errors. Still need to update docs.
2016-07-30 14:49:05 -04:00
Tony Garnock-Jones
3edd184242
Update syndicate-gl for split mux and relay.
2016-07-30 14:49:05 -04:00
Tony Garnock-Jones
c7dae47210
inbound* and outbound* are now match-expanders
2016-07-30 14:49:05 -04:00
Tony Garnock-Jones
07eb91b0d9
Update big-bang for split relay and mux.
2016-07-30 14:49:05 -04:00
Tony Garnock-Jones
17db697690
spawn->process+transition
2016-07-30 14:49:05 -04:00
Tony Garnock-Jones
c0786c86ca
Introduce struct process.
2016-07-30 14:49:05 -04:00
Tony Garnock-Jones
68ba2f74a6
Split dataspaces in to relay and mux sublayers.
...
This is a major change to the previous design, and also a change with
respect to the semantics in the ESOP 2016 paper. All the complexity of
echo-cancellation is stripped out of the core dataspace semantics, and
the relaying protocol is changed from one constructor, `at-meta`, to
two, `inbound` and `outbound`. The relay connecting a dataspace to its
container is now completely symmetric with the contained actors: it
initially asserts interest in what it is to relay, just like any other
actor would. Dataspaces no longer treat relaying specially.
This commit has updated all (I think) of the non-graphical examples. The
graphical code remains to be done in a following commit.
2016-07-30 14:49:05 -04:00
Tony Garnock-Jones
b8c109d82b
pretty-print-actor-state
2016-07-30 14:49:05 -04:00
Tony Garnock-Jones
2a2d363c5e
Improve printing of patches
2016-07-30 14:49:05 -04:00
Tony Garnock-Jones
129dd23b84
Remove obsolete endpoint.rkt and its example
2016-07-30 14:49:05 -04:00
Tony Garnock-Jones
7a3973a097
Move syndicate-monolithic to new historical directory.
2016-07-30 14:48:59 -04:00
Tony Garnock-Jones
56d2fc2c0d
Support #:when conditional (on ...) clauses.
2016-07-28 15:45:45 -04:00
Tony Garnock-Jones
0cff79abec
Switch from parameters to "stores".
...
A store is like a parameter, except stores are independent of each
other, unlike parameters which are bundled together into a single
parameterization. This was observable in cases like the
example-action-after-suspension code checked in here, where dataflow
invoked a script, which parameterized current-dataflow-subject-id.
This captured *too much* of things like the pending-patch and
pending-actions. Subsequent `schedule-action!` calls' effects were
then lost.
2016-07-28 15:45:45 -04:00
Sam Caldwell
2e24e105b8
Modify LLL two-buyer examples to give buyer A a budget
2016-07-28 15:33:52 -04:00
Sam Caldwell
48763d8dbe
modify HLL two-buyer example to give buyer A a budget
...
no longer bathing in venture capital
2016-07-27 18:01:15 -04:00
Tony Garnock-Jones
e99cd0887f
Improved tests for dataflow.rkt
2016-07-27 06:03:57 -04:00
Tony Garnock-Jones
8dba9a66c6
Line reader for TCP
2016-07-25 21:31:12 -04:00
Tony Garnock-Jones
8e22e58920
Move LLL two-buyer examples together in the syndicate collect
2016-07-25 18:37:45 -04:00
Tony Garnock-Jones
a05d486354
let-event
2016-07-25 18:34:34 -04:00
Sam Caldwell
ce80efeb85
Change monolithic two-buyer to syndicate/monolithic
2016-07-25 14:49:46 -04:00
Sam Caldwell
fdf0fa8cf6
Add spawn/stateless to syndicate/monolithic
2016-07-25 14:48:41 -04:00
Tony Garnock-Jones
819ff13835
Expanders for events and assertion-patterns.
...
Introduced expanders for events (define-event-expander) and for
assertion-patterns (define-assertion-expander).
Introduced convenience syntax and utilities in web.rkt for working
with web requests.
Support nested bindings in assertion-patterns for message events
(only).
2016-07-23 14:57:26 -04:00
Tony Garnock-Jones
796acbeea2
Defaults for web-response-header
2016-07-23 11:40:18 -04:00
Tony Garnock-Jones
b6e863fa79
Support for using struct-defaults in web.rkt, plus a simple default
2016-07-23 11:28:46 -04:00
Tony Garnock-Jones
981914c15b
Move web-demo.rkt to web-sanity-check.rkt
2016-07-23 11:03:17 -04:00
Sam Caldwell
c714374685
add monolithic two-buyer example
2016-07-22 18:16:50 -04:00
Sam Caldwell
9a6ce7d7f9
allow named stateless actors in monolithic lang
2016-07-22 18:16:14 -04:00
Sam Caldwell
e20506644f
update monolithic impl to use hierarchy.rkt
2016-07-22 16:28:22 -04:00
Sam Caldwell
f28e16ee7b
low-level two-buyer example
2016-07-22 15:20:10 -04:00
Sam Caldwell
9f8ddc5249
Allow stateless actors to be given names
2016-07-22 15:11:53 -04:00
Tony Garnock-Jones
cecb261c6b
Introduce level-anchor and level-anchor->meta-level
2016-07-21 18:53:41 -04:00
Tony Garnock-Jones
5aebc7fa75
#:meta-level in query-set and friends
2016-07-21 18:31:44 -04:00
Tony Garnock-Jones
c931b0aee5
Fix dataspace macro
2016-07-21 18:31:33 -04:00
Tony Garnock-Jones
4357424e78
Switch to non-boxed, persistent impl of fields
2016-07-21 16:50:16 -04:00
Tony Garnock-Jones
970baf7a36
Forbid multiple uses of a suspend-script continuation
2016-07-21 15:14:03 -04:00
Tony Garnock-Jones
bffc3757cb
Remove unused #:substate arg from add-facet!.
2016-07-21 15:00:58 -04:00
Tony Garnock-Jones
573ca4d6e5
Handle exceptions better in syndicate/threaded
2016-07-20 23:02:42 -04:00
Tony Garnock-Jones
ccdaceb30c
Add syndicate/threaded.
2016-07-20 22:13:43 -04:00
Tony Garnock-Jones
3569426048
Support specification of the form to use to create an actor in during/actor
2016-07-20 22:05:14 -04:00
Tony Garnock-Jones
9b5a399383
Route targeted-events via actor paths
2016-07-20 19:30:49 -04:00
Tony Garnock-Jones
815b139e5c
Split out keeping track of actor paths to hierarchy.rkt
2016-07-20 18:54:31 -04:00
Tony Garnock-Jones
a01480fe05
Anticipate the pid a process is *about* to be allocated.
2016-07-20 18:42:35 -04:00
Sam Caldwell
c76480f701
Allow giving two contracts in field macro
2016-07-20 16:51:41 -04:00
Sam Caldwell
01ad7c72f6
Allow field/c to have different in and out contracts
...
This can be used to temporarily disallow writing to the field, or
allowing the field to be initially #f but never set to #f.
2016-07-20 16:34:21 -04:00
Sam Caldwell
3b9e483076
Re-kerjigger field macro to allow using #f as a contract
2016-07-20 16:14:12 -04:00
Sam Caldwell
e20f87adba
Implement field/c using a struct rather than make-contract
...
Asumu suggested that using a struct with the contract property is
generally preferred.
2016-07-19 17:49:45 -04:00
Sam Caldwell
9cf12a381e
wrap contracts given to field with `field\c`
2016-07-18 15:20:38 -04:00
Sam Caldwell
0fb5fa52f4
allow field/c to blame positive party
2016-07-18 15:17:17 -04:00
Tony Garnock-Jones
a046bd0f23
Experimental begin/dataflow and define/dataflow facilities
2016-07-17 12:51:57 -04:00