Commit Graph

177 Commits

Author SHA1 Message Date
Tony Garnock-Jones 435ab0fbd8 TCP driver; simple example; chat server; chat client 2014-06-02 14:13:12 -04:00
Tony Garnock-Jones bdab665e36 Avoid laborious projection if all we're doing is capturing the whole thing anyway. 2014-06-02 14:12:45 -04:00
Tony Garnock-Jones 2014c22c41 Export matcher-empty? from core 2014-06-02 14:12:28 -04:00
Tony Garnock-Jones a2ee741832 matcher-key-set/single 2014-06-02 14:12:20 -04:00
Tony Garnock-Jones 58a0af38a6 Adjust projection to yield multiple values instead of a vector 2014-05-28 20:10:55 -04:00
Tony Garnock-Jones 96b92cf2d4 Support for embedding matchers in patterns 2014-05-28 17:11:36 -04:00
Tony Garnock-Jones 7a95306bb0 There may be no levels on the right-hand-side for a given metalevel. 2014-05-28 16:35:51 -04:00
Tony Garnock-Jones edd4436297 Default success/jsexpr transformers in gestalt/jsexpr conversion. 2014-05-28 16:31:40 -04:00
Tony Garnock-Jones dbb7e8fe67 gestalt-transform 2014-05-28 16:31:24 -04:00
Tony Garnock-Jones 53d0a67e96 Permit function to return #f in transition-bind 2014-05-28 16:31:05 -04:00
Tony Garnock-Jones 1a63a2c35d gestalt-accepts? 2014-05-28 16:30:50 -04:00
Tony Garnock-Jones 141f85b664 gestalt->jsexpr, jsexpr->gestalt 2014-05-28 16:02:20 -04:00
Tony Garnock-Jones 060e587fbf matcher->jsexpr, jsexpr->matcher 2014-05-28 15:53:04 -04:00
Tony Garnock-Jones 6b94074a41 Convert from pair-based to list-based matching. 2014-05-28 15:24:26 -04:00
Tony Garnock-Jones 720f84a4a6 Avoid inefficiency in filter and match by reordering union and intersection 2014-05-26 15:33:02 -04:00
Tony Garnock-Jones 8a7fce46fa Avoid redundant set wrapper 2014-05-26 14:57:40 -04:00
Tony Garnock-Jones 700e1eee57 Aggregate downward-gestalt separately from local process gestalts 2014-05-26 14:57:12 -04:00
Tony Garnock-Jones 3b2e2ad538 Another test 2014-05-26 06:29:06 -04:00
Tony Garnock-Jones 139adf074c Improved elision of wildcard-sequence cases in erase-path 2014-05-26 06:22:35 -04:00
Tony Garnock-Jones bd608c21a1 Remove unused function 2014-05-25 23:32:43 -04:00
Tony Garnock-Jones 4c2abd334c Make sure routing-updates reflect outer gestalt to updating process 2014-05-25 23:22:59 -04:00
Tony Garnock-Jones 52342e9ce5 Add TODO for bug re: downward gestalts 2014-05-25 13:23:25 -04:00
Tony Garnock-Jones 4c3c6d2e2d Eventually we should support infinite level 2014-05-25 13:23:12 -04:00
Tony Garnock-Jones 5058330e80 More tests of projection; change to default matcher-union-successes 2014-05-25 13:22:49 -04:00
Tony Garnock-Jones a9c750ab6b Eliminate useless unused argument 2014-05-25 11:33:20 -04:00
Tony Garnock-Jones 77a7620bdc Fix bug in projection against wildcards 2014-05-22 22:34:24 -04:00
Tony Garnock-Jones 9a5d9cb579 Move rseq* to test code, as it is otherwise unused 2014-05-22 19:13:02 -04:00
Tony Garnock-Jones cbf057204c Print empty gestalt differently to reduce ambiguity. 2014-05-22 18:49:26 -04:00
Tony Garnock-Jones 052c90ef78 Propagate transient gestalt states properly. Signal inital gestalts to spawned processes. 2014-05-22 18:49:13 -04:00
Tony Garnock-Jones a8fa384985 Reminder to perhaps remove the parameters again, as they may be slow 2014-05-21 23:41:01 -04:00
Tony Garnock-Jones 5092cff96b Update websocket driver and examples 2014-05-21 23:22:21 -04:00
Tony Garnock-Jones d86c64f68a Gestalts massively simplify demand-matcher 2014-05-21 23:21:39 -04:00
Tony Garnock-Jones d37eaa1236 Introduce parameters controlling route success merges; Ensure "minimal" path erasure 2014-05-21 23:20:49 -04:00
Tony Garnock-Jones aea07d16cc Convey the number of remaining processes after a termination 2014-05-21 23:17:25 -04:00
Tony Garnock-Jones bad652d0c5 Notes on important routing-update issues to address 2014-05-21 23:17:04 -04:00
Tony Garnock-Jones a7d8051e2e By setting the initial gestalt to #f, we ensure at least one routing-update gets through. 2014-05-21 23:16:38 -04:00
Tony Garnock-Jones bfa9c9cfcb projection->pattern 2014-05-21 21:02:38 -04:00
Tony Garnock-Jones 6649689b8f Make captures able to express and-patterns. 2014-05-21 20:54:36 -04:00
Tony Garnock-Jones 3bd9b338b5 Fix error messages 2014-05-21 19:59:06 -04:00
Tony Garnock-Jones e5ba41d8a3 Reformulate gestalts (again). Back to metalevel/level/pattern rather than metalevel/pattern/level. 2014-05-21 16:28:38 -04:00
Tony Garnock-Jones 513eec3b7b Correct comment (it was left behind when erase-path's args were flipped) 2014-05-20 23:32:07 -04:00
Tony Garnock-Jones a4e1d882f8 Reintroduce trigger-guards 2014-05-20 22:12:50 -04:00
Tony Garnock-Jones b750a01e78 Switch gestalt representations to accommodate n<m filtering.
The previous format separated out the different levels too much.
The new format pushes the level representation *under* the routing
matcher.
2014-05-20 21:50:19 -04:00
Tony Garnock-Jones 50ed37f52e gestalt-intersect is probably not useful as an API 2014-05-19 20:15:05 -04:00
Tony Garnock-Jones 77d23a0cba Updates to changed API 2014-05-19 20:01:43 -04:00
Tony Garnock-Jones 36b38dc757 Further API tweaks, and new tests 2014-05-19 19:57:02 -04:00
Tony Garnock-Jones 0cfa2bfe16 gestalt-project->finite-set -> gestalt-project-key-set 2014-05-19 18:59:05 -04:00
Tony Garnock-Jones 2ccd066012 matcher->finite-set -> matcher-key-set 2014-05-19 18:58:27 -04:00
Tony Garnock-Jones cad1dbbbca Generalize route.rkt's mapped-to values from sets. Also flip arg order of matcher-erase-path. 2014-05-19 18:41:59 -04:00
Tony Garnock-Jones 25a912c900 The appropriate unit to elide varies with the nesting level. 2014-05-16 12:38:19 -04:00
Tony Garnock-Jones 649b1b8e82 Avoid construction of intermediate list 2014-05-15 11:41:40 -04:00
Tony Garnock-Jones 6a609f4491 Optimizations for intersection and related operations. 2014-05-14 16:29:02 -04:00
Tony Garnock-Jones 2013f67341 Oops. Correct stupid error. 2014-05-14 16:28:47 -04:00
Tony Garnock-Jones 9ea6cc038d Add routing-implementation to fastrouting 2014-05-14 13:47:21 -04:00
Tony Garnock-Jones 68b12325f1 Exercise timer driver 2014-05-14 00:09:36 -04:00
Tony Garnock-Jones 0bff938cf7 Update timer driver 2014-05-14 00:03:07 -04:00
Tony Garnock-Jones 869f287e4b More exports 2014-05-14 00:02:52 -04:00
Tony Garnock-Jones 63010dc1db pretty-print-gestalt 2014-05-14 00:02:33 -04:00
Tony Garnock-Jones c01d4f09bd gestalt-empty? 2014-05-14 00:02:23 -04:00
Tony Garnock-Jones 1a0c5fcd62 Bugfix in matcher-match-matcher 2014-05-14 00:02:07 -04:00
Tony Garnock-Jones ca9bab153c Provide pretty-print-matcher 2014-05-14 00:01:43 -04:00
Tony Garnock-Jones 7fc0875228 Gestalt-based ground.rkt 2014-05-13 23:15:36 -04:00
Tony Garnock-Jones 2462c686ec Improve gestalt-combine function; n-ary gestalt-union 2014-05-13 23:15:24 -04:00
Tony Garnock-Jones 7035365197 Bring examples into line with new API 2014-05-13 23:14:52 -04:00
Tony Garnock-Jones f75392a051 Leftover from switch from vectors to lists. 2014-05-13 23:14:24 -04:00
Tony Garnock-Jones baf0ba9206 A process may have exited before it gets checked in step-children. 2014-05-13 23:14:00 -04:00
Tony Garnock-Jones db132b8230 Mark newly-spawned process as initially runnable 2014-05-13 23:13:25 -04:00
Tony Garnock-Jones ebc798c0aa Correct type error 2014-05-13 23:12:57 -04:00
Tony Garnock-Jones 536a7d8e3d Update gestalt union and erasure to match current API 2014-05-13 23:12:42 -04:00
Tony Garnock-Jones 8210272054 Handle empty matcher in matcher-match-value 2014-05-13 23:11:50 -04:00
Tony Garnock-Jones f788caf754 More exports and utilities 2014-05-13 23:08:42 -04:00
Tony Garnock-Jones 4711069f36 matcher-project and matcher->finite-set 2014-05-13 22:18:40 -04:00
Tony Garnock-Jones 67d1b3b6db Move tests together 2014-05-13 19:35:03 -04:00
Tony Garnock-Jones 8011a7263c Adapt first example 2014-05-10 19:27:27 -04:00
Tony Garnock-Jones ebdd50ca4c Finish first cut 2014-05-10 19:27:27 -04:00
Tony Garnock-Jones c415fdac65 Make gestalts list-based instead of mixed vectors and lists 2014-05-10 19:27:26 -04:00
Tony Garnock-Jones a916a6c194 Fix silly mistakes 2014-05-10 19:27:26 -04:00
Tony Garnock-Jones 469f18503b WIP 2014-05-10 19:27:26 -04:00
Tony Garnock-Jones d88eb390b8 WIP 2014-05-10 19:27:26 -04:00
Tony Garnock-Jones de6cd3884a Remove the old pattern.rkt 2014-05-10 19:27:26 -04:00
Tony Garnock-Jones f46e95c933 Add matcher-match-matcher 2014-05-10 19:27:17 -04:00
Tony Garnock-Jones 1aed7450cb Export "wildcard?" 2014-05-10 19:26:51 -04:00
Tony Garnock-Jones 9cdbd38ba0 Let matcher-intersect flexibly combine success-values; add matcher-relabel 2014-05-07 22:00:46 -04:00
Tony Garnock-Jones 7c11b3ace2 Renamings and better exports 2014-05-07 19:23:11 -04:00
Tony Garnock-Jones 4a142b62b2 More temporary exports 2014-05-06 21:23:59 -04:00
Tony Garnock-Jones 78ff95d8a2 Placeholder exports 2014-05-06 21:14:07 -04:00
Tony Garnock-Jones a3bebaa089 Split out benchmarking programs to minimart-benchmark repo 2014-05-02 20:29:14 -04:00
Tony Garnock-Jones b81e76bd74 Warmup to avoid outliers 2014-05-01 15:54:12 -04:00
Tony Garnock-Jones 784f89d308 Account for startup/boot delay separately. 2014-05-01 15:42:08 -04:00
Tony Garnock-Jones 51d7cffe3f More resolution at the very slow end 2014-05-01 15:11:29 -04:00
Tony Garnock-Jones 5c4747e56b Measure internal messaging ping-pong latency 2014-05-01 15:04:24 -04:00
Tony Garnock-Jones 0431a39cc1 Additional test 2014-05-01 14:06:25 -04:00
Tony Garnock-Jones d3d50d0cc3 Presence detector doesn't actually directly depend on pattern.rkt 2014-05-01 14:06:20 -04:00
Tony Garnock-Jones c514b2133a Fold in test cases from old pattern match implementation 2014-05-01 14:05:28 -04:00
Tony Garnock-Jones ba006264fc Be more consistent about use of #f in matcher functions. 2014-05-01 13:37:28 -04:00
Tony Garnock-Jones 80a2cef81c Limited route subtraction, via erase-path. 2014-05-01 07:36:56 -04:00
Tony Garnock-Jones a8fdc0fff3 Route intersections via rand 2014-05-01 06:46:39 -04:00
Tony Garnock-Jones 1352f0d473 Steps toward efficiently-indexed routing tables 2014-05-01 00:30:18 -04:00
Tony Garnock-Jones 55481dbdaf Profiler support 2014-02-04 16:25:06 -05:00
Tony Garnock-Jones 67e9483d0e websocket-server -> websocket-local-server 2014-01-13 19:33:48 -05:00