Tony Garnock-Jones
1fa50e4e6a
file-system-during2.rkt
2016-07-31 12:22:15 -04:00
Tony Garnock-Jones
628b7b2356
Remove superfluous begin0; reindent
2016-07-31 12:19:54 -04:00
Tony Garnock-Jones
e2897d37f4
Factor out commonality from file-system*.rkt examples
2016-07-31 12:17:12 -04:00
Tony Garnock-Jones
463dd48577
Always pick the highest-priority script to run next.
...
This means that `*gc-priority*` scripts will now reliably run last.
Prior to this change, if some higher-priority script X ran while a
`*gc-priority*` script Y was queued, and it enqueued a high-priority
script Z, then Y would run before Z.
2016-07-31 12:02:11 -04:00
Tony Garnock-Jones
f34924bc6d
Leave a "tombstone" so we can see the process's name while any record of it remains.
2016-07-31 11:36:25 -04:00
Tony Garnock-Jones
4dad3e9661
Process retractions before asserts in the query forms
2016-07-30 17:05:54 -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
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
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
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
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
Tony Garnock-Jones
21f05e110a
Do not provide "sleep" from the #langs
2016-07-17 12:51:57 -04:00