Commit Graph

213 Commits

Author SHA1 Message Date
Tony Garnock-Jones 9c38509973 Typo 2018-09-28 11:12:53 +01:00
Tony Garnock-Jones 4187ccb77d Clarification 2018-09-28 11:12:35 +01:00
Tony Garnock-Jones 4f65284ef9 More tests and fixes 2018-09-28 11:00:50 +01:00
Tony Garnock-Jones d27f9cb7cc Disallow whitespace between a label and its open-parenthesis 2018-09-28 11:00:40 +01:00
Tony Garnock-Jones d267f65b71 More tests, coverage and fixes 2018-09-27 23:14:43 +01:00
Tony Garnock-Jones 5f9f2175f0 More tests and fixes 2018-09-27 22:13:46 +01:00
Tony Garnock-Jones 47519680d5 Bug fixes to text reader, and more tests 2018-09-27 21:35:03 +01:00
Tony Garnock-Jones b807b38a44 More TODOs in the text; initial textual reader in Racket 2018-09-27 19:25:28 +01:00
Tony Garnock-Jones f9497d64c5 Handle a couple of TODOs 2018-09-27 13:34:32 +01:00
Tony Garnock-Jones 6fa0dde8f4 WIP from the early hours of this morning, adding textual syntax 2018-09-27 11:42:55 +01:00
Tony Garnock-Jones 906f8a01b6 Python preserves 2018-09-25 15:53:56 +01:00
Tony Garnock-Jones b6a3c480b3 Small fix and new question 2018-09-25 15:53:42 +01:00
Tony Garnock-Jones d0ff78e406 Remove version; improve tests 2018-09-25 15:53:35 +01:00
Tony Garnock-Jones 240cee9d52 Bring preserve.rkt up to spec 2018-09-25 11:49:32 +01:00
Tony Garnock-Jones 780bc6fec2 Python SignedInteger rep needs long as well as int 2018-09-25 10:20:35 +01:00
Tony Garnock-Jones 6e98ba0097 Link to Racket docs for prefab struct labels 2018-09-25 10:08:22 +01:00
Tony Garnock-Jones 0444a2a096 Streamed binaries always use ByteString chunks 2018-09-24 23:15:36 +01:00
Tony Garnock-Jones a9445b2ca7 Squeak Smalltalk mapping 2018-09-24 19:54:59 +01:00
Tony Garnock-Jones e25b7dacbc Improve (?) Erlang mapping 2018-09-24 19:54:52 +01:00
Tony Garnock-Jones 4237200210 Remove page-break override 2018-09-24 19:54:43 +01:00
Tony Garnock-Jones 354776199f Improve formatting now that section numbers exist 2018-09-24 19:54:23 +01:00
Tony Garnock-Jones 3c7215397d RFC7159 -> RFC8259 2018-09-24 19:12:43 +01:00
Tony Garnock-Jones 35726436c9 Specially number appendices 2018-09-24 19:12:29 +01:00
Tony Garnock-Jones e438085e74 Tweaks; python mapping 2018-09-24 18:34:07 +01:00
Tony Garnock-Jones 3b12a290a3 Single-colon pseudoselectors 2018-09-24 18:11:34 +01:00
Tony Garnock-Jones 1275aaded1 Fix the jolly section numbering 2018-09-24 18:11:19 +01:00
Tony Garnock-Jones 96c46c19b4 Split out CSS; attempt to get section numbering (grrr!) 2018-09-24 16:45:39 +01:00
Tony Garnock-Jones 4716b4f4e9 Minor print layout tweaks, and minor content fixes 2018-09-24 16:08:48 +01:00
Tony Garnock-Jones b656df8632 Tighten 2018-09-24 15:33:19 +01:00
Tony Garnock-Jones a22ded2f16 Literal small integers 2018-09-24 14:09:26 +01:00
Tony Garnock-Jones b4d4092b90 Trim and improve 2018-09-24 12:59:22 +01:00
Tony Garnock-Jones b2eb53e664 Tweak print stylesheet 2018-09-24 10:36:10 +01:00
Tony Garnock-Jones 7f71620136 Print makefile 2018-09-23 22:56:41 +01:00
Tony Garnock-Jones f2c2e4d39e Tweaks for Chrome and for print 2018-09-23 22:56:36 +01:00
Tony Garnock-Jones ff5cb65f5f Fixes 2018-09-23 22:44:43 +01:00
Tony Garnock-Jones 00a69ae012 Progress 2018-09-23 22:35:00 +01:00
Tony Garnock-Jones f2f57385ce Many improvements 2018-09-23 18:14:58 +01:00
Tony Garnock-Jones 2996970cbe move codec.md together with preserve.md 2018-09-23 14:39:46 +01:00
Tony Garnock-Jones 738fad360a codec.md draft 2018-09-23 14:39:02 +01:00
Tony Garnock-Jones c23285781c preserve.md based on codec.md which I'm about to check in 2018-09-23 14:37:20 +01:00
Tony Garnock-Jones f6ab8320c5 sqlite driver 2018-08-29 15:03:12 +01:00
Tony Garnock-Jones 939396b9b7 Rename codec --> preserve 2018-08-27 10:24:11 +01:00
Tony Garnock-Jones 542d0a886a Explore struct inheritance 2018-08-21 10:54:17 +01:00
Tony Garnock-Jones 7dacb5ba6e Better codec 2018-08-19 22:13:42 +01:00
Tony Garnock-Jones 77b0addcd0 Improve multicast protocol 2018-08-19 17:54:32 +01:00
Tony Garnock-Jones c125564f5f Improve example 2018-08-15 10:11:07 +01:00
Tony Garnock-Jones 061765041b Initial quasi-port of Syndicate/rkt web driver 2018-08-14 17:58:36 +01:00
Tony Garnock-Jones 76674c77b3 Multicast-UDP-based dataspace sketch, from last night 2018-08-14 12:35:56 +01:00
Tony Garnock-Jones e9457af8c2 Clear no-longer-interesting timers 2018-08-14 12:33:50 +01:00
Tony Garnock-Jones 979d057f3f TODO 2018-08-13 21:45:44 +01:00
Tony Garnock-Jones f5efa77d91 term-intersect 2018-08-13 21:32:51 +01:00
Tony Garnock-Jones 86412b273d UDP and UDP multicast 2018-08-13 20:07:27 +01:00
Tony Garnock-Jones ea16d24be8 filesystem driver 2018-05-11 09:58:25 +01:00
Tony Garnock-Jones 43f1eab1f3 Port netstack to imperative-syndicate.
If you change `racket-bitsyntax` to use `typed/racket/base/no-check`
for its `bitstring.rkt` module, this runs about 15x faster than the
`syndicate` version of the stack. Otherwise, it runs about 3x faster
than the `syndicate` version of the stack.
2018-05-06 15:28:41 +01:00
Tony Garnock-Jones 35726f3831 Notes on tcp2 protocol 2018-05-06 11:24:28 +01:00
Tony Garnock-Jones 96d24fbb4b New test case 2018-05-06 11:06:36 +01:00
Tony Garnock-Jones 9fc621c829 Add missing assertion for outbound connections. 2018-05-06 11:03:39 +01:00
Tony Garnock-Jones 61cd0613ca Repair bogus test. I should have caught this earlier! 2018-05-06 10:55:21 +01:00
Tony Garnock-Jones be1bc6c220 Improve the kinds of tests we can do for expected output slightly. 2018-05-06 10:55:02 +01:00
Tony Garnock-Jones daba892a07 pattern-expander.rkt 2018-05-04 23:15:09 +01:00
Tony Garnock-Jones d053edc101 GUI example 2018-05-04 16:57:22 +01:00
Tony Garnock-Jones 46ddb47050 Cosmetic - extra logging (when uncommented) 2018-05-04 16:56:56 +01:00
Tony Garnock-Jones d3f27488ed Repair long-standing error in skeleton-walking. 2018-05-04 16:56:45 +01:00
Tony Garnock-Jones 000fa3c008 Extremely limited support for quasiquoting and quoting in patterns 2018-05-04 16:56:23 +01:00
Tony Garnock-Jones 1868b10617 Clock face example 2018-05-04 16:09:12 +01:00
Tony Garnock-Jones bc4c080641 Quasi-useful debug output 2018-05-04 16:04:42 +01:00
Tony Garnock-Jones ab64f71766 Restriction-paths: right idea (?), wrong implementation. This time maybe.
Instead of having restriction-paths as an adjunct to a change, they're
more propertly a part of each assertion itself. The new `skeleton.rkt`
keeps an optional restriction-path with each assertion, treating it as
distinct from its underlying assertion. The idea of not signalling
changes in assertions that have a restriction-path mismatch stays.
2018-05-04 15:55:53 +01:00
Tony Garnock-Jones ef4584a60f Skip apply-patch! make-work if patch is empty 2018-05-03 22:56:40 +01:00
Tony Garnock-Jones 69a8893da3 Add the concept of "restriction-path", which limits assertion visibility.
This is used when relaying: because we don't have access to the full
term, but only the projection results, we are inserting various
`(discard)`s. This is the cause of the failure in
`test/core/nesting-confusion.rkt`.

By adding `restriction-path`, we allow the inner dataspace to avoid
showing a reconstructed term to endpoints that might be able to
observe the reconstructed parts.

An alternative implementation approach is to generalize patterns in
the inner relay actor, translating all `(discard)`s into captures,
which would give us all the relevant terms that we need. The way I've
chosen to go (or at least, to try out) allows us to potentially keep
the "efficient" idea of just transmitting pattern-bound values across
some network link connecting dataspaces. The alternative would require
transmission of the full assertions, eliding no irrelevant detail.
2018-05-03 22:09:33 +01:00
Tony Garnock-Jones 8b36c52455 for/bag and for/bag/count 2018-05-03 22:09:13 +01:00
Tony Garnock-Jones ee0033b6be Make test-implementation language expose all of `racket` rather than just `racket/base`, for convenience. 2018-05-03 22:08:52 +01:00
Tony Garnock-Jones f01b17dea4 Reuse apply-patch for initial-assertions too 2018-05-03 20:09:34 +01:00
Tony Garnock-Jones 00d50e6700 Factor out assertion structure definitions 2018-05-03 16:14:30 +01:00
Tony Garnock-Jones fecd2f9787 Notes on install and test 2018-05-03 15:21:33 +01:00
Tony Garnock-Jones 47a113026c README.md 2018-05-03 15:06:53 +01:00
Tony Garnock-Jones fa3505e3a6 Add second, non-dataspace, test case to illustrate correct behaviour 2018-05-02 23:36:03 +01:00
Tony Garnock-Jones 852eff8d0b New (failing) test case re: the approach to relaying 2018-05-02 18:23:02 +01:00
Tony Garnock-Jones bc5b28c403 Correct printing of test procedures 2018-05-02 18:20:33 +01:00
Tony Garnock-Jones e4a1a6e075 Add `bag-empty?` 2018-05-02 18:20:24 +01:00
Tony Garnock-Jones 17cee51342 Ensure (??) that relays' assertions can't outlive them 2018-05-02 18:10:52 +01:00
Tony Garnock-Jones dd123f4a27 Notes on eventual improvements to dataspace nesting 2018-05-02 13:19:18 +01:00
Tony Garnock-Jones 74cb70bdf3 Actually-useful instantaneous frame rate measurement 2018-05-01 22:40:12 +01:00
Tony Garnock-Jones eb208f3a10 Handy logging for diagnosing problems 2018-05-01 22:39:50 +01:00
Tony Garnock-Jones 367b39ce39 Eliminate a (mostly harmless) source of #f current-facet. 2018-05-01 22:39:26 +01:00
Tony Garnock-Jones 669122766d Allow multiple "root" facets, by creating a dummy root 2018-05-01 22:39:02 +01:00
Tony Garnock-Jones c85f05ced1 A few names for unnamed actors make it clear which actor is faulting 2018-05-01 21:19:19 +01:00
Tony Garnock-Jones bbcb8a3b80 Adapt platformer to imperative-syndicate. Mostly working!
It's also nicely fast compared to the old-Syndicate version :-)

There are still some problems with parameters in cross-ds relaying;
the symptom is #f for (current-facet) at some point, leading to some
sprites that don't get retracted (!).
2018-05-01 21:15:22 +01:00
Tony Garnock-Jones 869a495392 First sketch of `quit-dataspace!`. 2018-05-01 21:12:54 +01:00
Tony Garnock-Jones 896cfe2498 Multi-assert!/retract! for adhoc assertions 2018-05-01 20:58:26 +01:00
Tony Garnock-Jones e43054a6bd More thoughtless uncommenting of query-* forms 2018-05-01 20:58:02 +01:00
Tony Garnock-Jones 9c22868bd2 Correct error from earlier thoughtless uncommenting 2018-05-01 20:57:42 +01:00
Tony Garnock-Jones e4e0b5f9d4 Support vector in patterns, like we already support list 2018-05-01 20:57:22 +01:00
Tony Garnock-Jones 2b2d12075a gl-2d driver and examples 2018-05-01 17:39:17 +01:00
Tony Garnock-Jones 38c6bfd20e Drain multiple external ground events at once. (Good or bad idea?) 2018-05-01 17:34:51 +01:00
Tony Garnock-Jones 65b2c94161 Easy access to profiling 2018-05-01 17:34:34 +01:00
Tony Garnock-Jones 32d217f3e0 Care less about exact set ordering in test case 2018-05-01 17:32:03 +01:00
Tony Garnock-Jones 475e6527f3 Uncomment query-value and friends. May need tweaks. 2018-04-30 22:48:50 +01:00
Tony Garnock-Jones ec0933ffdd Clamp `adhoc-retract!` to not drop below zero. 2018-04-30 22:48:27 +01:00
Tony Garnock-Jones 2575b71db4 In case there are no activation-forms, add a gratuitous `(void)` at the end. 2018-04-30 22:47:53 +01:00
Tony Garnock-Jones f3ca2b6a15 Repair incorrect interleaving of actions and scripts 2018-04-30 22:47:25 +01:00