Sam Caldwell
da422ff117
update field declaration syntax to match full impl
2017-03-17 13:50:32 -04:00
Sam Caldwell
88f515a98f
Change syntax of field accesses to match full implementation
2017-03-17 13:50:32 -04:00
Sam Caldwell
fb3918404c
fix exception handling for booting actors
2017-03-17 13:50:32 -04:00
Sam Caldwell
6ee97839fa
use racket functions to represent lambdas
2017-03-17 13:50:32 -04:00
Sam Caldwell
e57af91698
reorganize
2017-03-17 13:50:32 -04:00
Sam Caldwell
318363f4be
cleanup
2017-03-17 13:50:32 -04:00
Sam Caldwell
c8cc8051a1
don't run new facets asap
2017-03-17 13:50:32 -04:00
Sam Caldwell
34c3b6bf3a
fix ft-assertions
2017-03-17 13:50:32 -04:00
Sam Caldwell
90bf07f6d4
fixups
2017-03-17 13:50:32 -04:00
Sam Caldwell
079e2da53d
sort out relaying in hll interperter
2017-03-17 13:50:31 -04:00
Sam Caldwell
df40cc7ba9
fix race in trace testing
2017-03-17 13:50:31 -04:00
Sam Caldwell
3986f4d0ea
add trace testing
2017-03-17 13:50:31 -04:00
Sam Caldwell
e1671ce878
add on-stop
2017-03-17 13:50:31 -04:00
Sam Caldwell
da1f9d4b6d
MONADS
2017-03-17 13:50:31 -04:00
Sam Caldwell
5544052488
add lambda to hll interp
2017-03-17 13:50:31 -04:00
Sam Caldwell
7b1c102224
add dataspaces to hll interp
2017-03-17 13:50:31 -04:00
Sam Caldwell
1be415eb45
cleanup
2017-03-17 13:50:31 -04:00
Sam Caldwell
53cd60f196
run hll actors in two steps
...
first: run facets/endpoints to determine the new facet tree and any
actions (messages, spawns)
second: use new facet tree to determine assertions and subscriptions
This makes sure that all field updates are visible to
assertions/subscriptions.
2017-03-17 13:50:31 -04:00
Sam Caldwell
f19a02e859
catch exceptions from hll actors
2017-03-17 13:50:30 -04:00
Sam Caldwell
5a87428f62
partially working hll interpreter
2017-03-17 13:50:30 -04:00
Tony Garnock-Jones
118cdef4c6
Refactor other chat servers to match
2017-03-14 18:29:45 -04:00
Tony Garnock-Jones
689d410bda
Rearrange chat-simplified-internals2.rkt
2017-03-14 18:06:02 -04:00
Sam Caldwell
e0e7baed46
Keep ground dataspace running while subscriptions are present
2017-03-08 18:00:45 -05:00
Tony Garnock-Jones
dc83d33afb
Cosmetic
2017-03-08 06:45:40 -05:00
Tony Garnock-Jones
c51f18efc2
Compile lambda calculus into Syndicate
2017-03-08 06:37:27 -05:00
Sam Caldwell
921b84e056
Add upside-down relays
2017-03-07 12:59:39 -05:00
Tony Garnock-Jones
ea1b1bc072
Allow run-ground to return the active set of assertions at the time of its exit.
2017-02-28 18:44:01 -05:00
Tony Garnock-Jones
ee52520a13
spawn-dataspace --> dataspace-actor
2017-02-25 11:16:25 -05:00
Sam Caldwell
783d132f25
Fix upside-down spawn translations
2017-02-23 22:22:43 -05:00
Sam Caldwell
99ccc12fee
typo
2017-02-22 17:46:55 -05:00
Sam Caldwell
27cb9ba983
Add a way of sepcifying and checking upside-down traces
2017-02-22 17:44:07 -05:00
Sam Caldwell
1f4bf075b7
Take actors to ... the upside down [1]
...
Actors in the upside down may communicate with each other, but not the outside
world. However, the outside world can see what actors in the upside-down are
saying. The intention is to use this facility for testing.
[1] (http://strangerthings.wikia.com/wiki/Upside_Down ).
2017-02-22 17:42:06 -05:00
Tony Garnock-Jones
1bfc4bbdad
Log port number in SMTP driver startup/shutdown messages
2017-02-21 15:12:47 -05:00
Tony Garnock-Jones
6d8ced489c
Accept toplevel action-producing expressions yielding 0 values.
...
A recent change to Racket must have changed the way `for` expands,
because now in conjunction with `local-expand`, we see *effectively* a
`(begin (values) (void))`. This isn't a problem usually, but in
`#lang syndicate`'s `module-begin` context, we split apart `begin`s
and examine their constituents, leading to examination of something
that will ultimately yield 0 values.
The change accepts either 0 or 1 values when collecting actions for
the module's main boot actor to execute. More than 1 value yielded by
such an expression is still considered an error. Currently, it gives
unhelpful error location information; a future refinement might be to
make the error reporting for this (rare) situation more helpful.
2017-02-20 17:04:39 -05:00
Tony Garnock-Jones
deefa251d9
Missed one.
2017-02-20 13:29:19 -05:00
Tony Garnock-Jones
1f8bb56c69
Update examples
2017-02-20 12:54:52 -05:00
Sam Caldwell
9c1e9719ba
swap the meaning of spawn and actor in racket syndicate
2017-02-15 18:18:19 -05:00
Tony Garnock-Jones
413840382b
Better crash-handling for simplified TCP protocol sketch
2017-02-09 19:24:02 -05:00
Sam Caldwell
2b19064960
Update FAQ.md
2017-01-27 15:22:06 -05:00
Tony Garnock-Jones
25729454a6
Tweak
2017-01-23 17:38:38 -05:00
Tony Garnock-Jones
36459c5942
Even simpler chat server
2017-01-23 16:40:01 -05:00
Tony Garnock-Jones
e593cf768b
Cosmetic
2017-01-08 14:10:15 -05:00
Tony Garnock-Jones
19bebc9881
Handle IRC QUIT
2017-01-07 01:46:09 -05:00
Tony Garnock-Jones
eb4a228c73
Crude IRC driver and example.
2017-01-07 01:14:14 -05:00
Tony Garnock-Jones
038ea39b30
Fix deps
2016-12-19 10:15:15 +13:00
Tony Garnock-Jones
b946bbec3c
Glitching example
2016-12-12 11:09:39 +13:00
Tony Garnock-Jones
4940c0b372
Many animated sprites
2016-12-12 10:46:19 +13:00
Tony Garnock-Jones
6a2163bce9
Avoid accidental shadowing of field-names in query-value* and friends
2016-12-12 10:26:50 +13:00
Tony Garnock-Jones
c7db9f2543
Reload when hash of file has changed; stop using a naive counter
2016-12-07 10:10:36 +13:00
Tony Garnock-Jones
b87639b7a4
Split out reloader-mixin and reloader-mixin*
2016-12-07 09:47:53 +13:00
Tony Garnock-Jones
d9905df4e5
Add #:linkage for during/actor and the new supervise/actor to communicate properly
2016-12-07 09:47:39 +13:00
Tony Garnock-Jones
f440911e7f
Sort process table by PID
2016-12-07 09:47:03 +13:00
Tony Garnock-Jones
c019a61c18
Improvements in error-handling for websocket connections re: deadlock, closed ports etc.
2016-12-06 05:55:00 +13:00
Tony Garnock-Jones
64cfce2472
Work around limitations in the way the OS supports filesystem-change-evt
2016-12-06 05:54:17 +13:00
Tony Garnock-Jones
4ee234f118
Remove egregious lack of support for reading directory contents in filesystem driver
2016-12-04 17:33:12 +13:00
Tony Garnock-Jones
c2ece35bf9
Add #:hook to spawn-broker-server-connection
2016-11-30 10:19:56 +13:00
Tony Garnock-Jones
78cb6f0c02
Add #:hook to spawn-configuration
2016-11-29 18:22:00 +13:00
Tony Garnock-Jones
97b194487b
Remove unneeded definitions
2016-11-29 18:05:06 +13:00
Tony Garnock-Jones
ae6c5a409f
Abstract broker over spatial separation syntax used
2016-11-29 16:29:54 +13:00
Tony Garnock-Jones
97bb848611
Always supervise reloaders
2016-11-29 15:04:13 +13:00
Tony Garnock-Jones
d0d7e677fe
Reevaluate supervisor name expression for each supervisee
2016-11-29 14:59:14 +13:00
Tony Garnock-Jones
d9cc478e6c
Use a gensym if no supervisor name is supplied
2016-11-29 14:53:46 +13:00
Tony Garnock-Jones
8cd60417c4
Reimplement supervise.rkt to use spawn->process+transition at each reboot.
2016-11-29 14:48:28 +13:00
Tony Garnock-Jones
726b936ed3
Example of supervision
2016-11-29 13:45:43 +13:00
Tony Garnock-Jones
02c0af4c75
Remove noisy logging
2016-11-29 13:45:23 +13:00
Tony Garnock-Jones
885a1d05d6
Initial stab at a general supervisor
2016-11-29 12:28:08 +13:00
Tony Garnock-Jones
9bb831cac5
Avoid stomping on current-actor-state if it is changed in patch-fn
2016-11-29 12:24:31 +13:00
Tony Garnock-Jones
f677c3a888
current-action-transformer must be a store, not a parameter, else it sticks around for (e.g.) supervision of children of supervised actors
2016-11-29 12:23:33 +13:00
Tony Garnock-Jones
3a3d216908
Only act when we know a positive fact about the state of our watched file
2016-11-29 12:19:34 +13:00
Tony Garnock-Jones
bde2d833bd
Clean up internal interfaces to actor.rkt
2016-11-29 10:34:37 +13:00
Tony Garnock-Jones
f638923c6f
`current-action-transformer`
2016-11-29 10:19:52 +13:00
Tony Garnock-Jones
05c57ec05d
`perform-actions!`
2016-11-29 10:19:06 +13:00
Tony Garnock-Jones
c77513e838
Improve actor-state pretty-printing
2016-11-29 10:18:38 +13:00
Tony Garnock-Jones
e7402e4387
example-multiple-suspension-resumption.rkt
2016-11-29 10:16:39 +13:00
Tony Garnock-Jones
260a99e08b
Track lexical information through analyze-pattern
2016-11-28 14:08:46 +13:00
Tony Garnock-Jones
bab5aba083
Crude steps toward reloadable Syndicate modules
2016-11-28 12:27:10 +13:00
Tony Garnock-Jones
8202220fec
`schedule-actions!`
2016-11-28 11:39:38 +13:00
Tony Garnock-Jones
2f7313a489
Use web-request-header-websocket-upgrade?.
2016-11-26 11:27:14 +13:00
Tony Garnock-Jones
ad2874f463
`web-request-header-websocket-upgrade?`
2016-11-26 11:25:44 +13:00
Tony Garnock-Jones
8f181f5b4d
Hoist broker startup into a module+ main
2016-11-26 11:19:31 +13:00
Tony Garnock-Jones
b72fca51b0
Export spawn-broker-server-connection
2016-11-26 11:19:17 +13:00
Tony Garnock-Jones
f1a7e10fbf
Change syndicate-broker to use web.rkt instead of websocket.rkt
2016-11-26 11:09:23 +13:00
Tony Garnock-Jones
7b5b866a6d
web-request-peer-details
2016-11-26 11:08:45 +13:00
Tony Garnock-Jones
16d9dd27c9
... Oops.
2016-11-26 10:02:59 +13:00
Tony Garnock-Jones
990ae8ea9a
Oops.
2016-11-26 09:59:24 +13:00
Tony Garnock-Jones
0a585d7842
More uniform treatment of resource-path functions
2016-11-26 09:54:26 +13:00
Tony Garnock-Jones
4af472f7ff
Log smtp-account startup and shutdown
2016-11-24 10:38:36 +13:00
Tony Garnock-Jones
a3335800f6
Make immediate-query able to yield multiple values
2016-11-24 10:36:38 +13:00
Tony Garnock-Jones
f201bea5c6
immediate-query
2016-11-23 22:11:35 +13:00
Tony Garnock-Jones
f0f29007df
Very basic inbound cookie support
2016-11-23 22:05:49 +13:00
Tony Garnock-Jones
257c0bf628
#:headers for `web-redirect!`.
2016-11-23 17:21:01 +13:00
Tony Garnock-Jones
0d34e3280e
web-redirect/temporary! -> web-redirect!
2016-11-23 15:39:11 +13:00
Tony Garnock-Jones
3ce8bc380b
web-redirect/temporary!
2016-11-23 15:32:44 +13:00
Tony Garnock-Jones
4b99b629df
syndicate/drivers/config
2016-11-23 13:49:24 +13:00
Tony Garnock-Jones
97a843ccec
SMTP driver
2016-11-23 13:42:10 +13:00
Tony Garnock-Jones
c302e35024
Properly shut down tcp-listener
2016-11-22 11:45:53 +13:00
Tony Garnock-Jones
0102a7d1cd
append-url-path
2016-11-22 11:08:11 +13:00
Tony Garnock-Jones
6497cc5185
Use utility sleep instead of repeating it in one of the examples
2016-11-22 09:16:23 +13:00
Tony Garnock-Jones
4d6a2986d5
web-response-successful?
2016-11-22 09:16:08 +13:00
Tony Garnock-Jones
c8b7be22cc
Use SSL on outbound HTTPS connections properly
2016-11-21 17:38:55 +13:00