Tony Garnock-Jones
8008ca5a53
Rearrange protocols subtree
2021-07-01 09:51:17 +02:00
Tony Garnock-Jones
f2063997ec
Update schemas to match new identifier restrictions.
2021-06-25 09:45:38 +02:00
Tony Garnock-Jones
20eeb6cd55
Introduce "smart constructors" for patterns to merge literal chunks where possible, making patterns-over-patterns less annoying to express (hopefully)
2021-06-18 17:02:56 +02:00
Tony Garnock-Jones
28901e9d31
Simpler stream connection protocol.
2021-06-18 13:48:12 +02:00
Tony Garnock-Jones
68db114840
Factor generic stream stuff out of tcp.rkt into stream.rkt
2021-06-17 15:26:14 +02:00
Tony Garnock-Jones
0ab3526cba
Services and service activation
2021-06-17 14:57:06 +02:00
Tony Garnock-Jones
ac8ea67ab1
`when` -> `on`; StreamConnection API; better `this-target`; tcp-listen errors
...
- spec-generic StreamConnection translators, for simple TCP API
- `when` -> `on`, better use for event-expanders
- Removal of special processing of `at`, making `this-target` properly lexically scopeable
- TcpListenError and handling of tcp-listen errors
- SYNDICATE_COLUMNS for pretty-printing of dataspace traces
- Repair driver-support.rkt thread shutdown turn-taking
- Refinements to stream protocols and implementation
- Improvements to syntax location preservation in syntax.rkt
2021-06-17 13:38:30 +02:00
Tony Garnock-Jones
d30c6feeee
Split out experimental "stream" protocols; make tcp.rkt use them; more inertness checks
...
Also, a few other important changes:
- Better printing of entity-ref structs
- Inertness checks on assertion retraction (!) and preventer-disarm
- Correct selection of active facet during dataflow recomputations
- Repair silly omission in turn-assert/dataflow!
2021-06-16 21:44:07 +02:00
Tony Garnock-Jones
3fe5d3a343
Check for EOF even when there are no credits
2021-06-15 14:03:26 +02:00
Tony Garnock-Jones
2b18bb5b36
Fix ordering of credit issue
2021-06-15 13:58:26 +02:00
Tony Garnock-Jones
9451f9886f
Whole-packet flow credit
2021-06-15 12:46:09 +02:00
Tony Garnock-Jones
b64b111a45
Split out assert-control
2021-06-15 12:44:13 +02:00
Tony Garnock-Jones
0b1e9874d1
Treat #:message separately from #:asserted.
...
While in principle messages are "instantaneous" assertions, it invites
confusion to treat them as such in context of `(object)` because
assertions by default spawn nested facets, so it's too easy to
accidentally wrap a message handler in an unwanted facet. Being
explicit about messages means you never get an unwanted facet wrapper.
2021-06-15 12:41:46 +02:00
Tony Garnock-Jones
6c9926cb11
Add ConnectionPeer assertions; rename TcpOutbound -> TcpRemote and TcpInbound -> TcpLocal
2021-06-15 12:37:14 +02:00
Tony Garnock-Jones
4a0e6e0519
actor-group; bug fixes
2021-06-13 07:55:50 +02:00
Tony Garnock-Jones
6546e335ef
Refactor/repair tcp.prs and tcp.rkt
2021-06-11 15:29:12 +02:00
Tony Garnock-Jones
d304d1e87d
Credit-based flow control on tcp driver; line mode
2021-06-11 14:18:53 +02:00
Tony Garnock-Jones
b409063ff2
Handle EPIPE in tcp driver
2021-06-10 16:46:20 +02:00
Tony Garnock-Jones
247fd1b2c0
Introduce `object` and `spawn/link`
2021-06-10 16:21:30 +02:00
Tony Garnock-Jones
2f4525b031
Split out tcp-client.rkt and tcp-echo-server.rkt
2021-06-10 13:35:26 +02:00
Tony Garnock-Jones
752bc91991
ActiveSocket-close now gets a string, not an embedded exn
2021-06-10 13:33:16 +02:00
Tony Garnock-Jones
bd65204760
entity/stop-on-retract
2021-06-10 13:29:19 +02:00
Tony Garnock-Jones
37ca805969
Ambient current-turn
2021-06-10 11:42:07 +02:00
Tony Garnock-Jones
45e8c29976
TCP client driver, and provides
2021-06-10 10:42:59 +02:00
Tony Garnock-Jones
336811c51e
Beginnings of a TCP driver
2021-06-10 10:00:43 +02:00
Tony Garnock-Jones
08c4980025
Move the bulk of the existing implementation out of the way
2021-05-27 10:34:35 +02:00
Tony Garnock-Jones
f269c02c23
Rearrange for independent packages.
2020-04-27 20:27:48 +02:00
Tony Garnock-Jones
ae97fb1d1e
Flow-controlled TCP (except in netstack); flow-controlled server/federation messages; fixes federation startup glitching
2019-05-12 13:07:38 +01:00
Tony Garnock-Jones
4e33429b19
tcp-rejected; reassert-on
2019-03-18 23:27:59 +00:00
Tony Garnock-Jones
e72e22f250
tcp-connection-peer
2019-01-28 01:14:58 +00:00
Tony Garnock-Jones
35726f3831
Notes on tcp2 protocol
2018-05-06 11:24:28 +01:00
Tony Garnock-Jones
9fc621c829
Add missing assertion for outbound connections.
2018-05-06 11:03:39 +01:00
Tony Garnock-Jones
91596b066f
External-event and TCP drivers; chat server and stdin echo programs
2018-04-29 18:43:39 +01:00