Commit Graph

4 Commits (master)

Author SHA1 Message Date
vi 00d2341394 Tighten some loops, change more interface.
This will save.. five comparisons.. occasionally? But it's a more
transparent design, and it seems more charitable to group interface
changes together.
2017-12-11 05:52:40 +01:00
vi c8fa18c5f4 rewrite(URL|Cookie) are now pure.
They have been pure since ed1933f, but now the types reflect that.

Breaking interface change.
2017-12-11 05:13:59 +01:00
vi ed1933f2c5 Remove the IO bottleneck.
Don't redundantly readIO/parse the rulesets; do this once, lazily
carrying out the involved operations. Rulesets are invariant over
executions.

This improves performance by a few orders of magnitude. Though at some
point we should substitute linear search for lookup on a generalised
suffix tree of rooted domains.

Breaking interface change, though I'll likely restore the old form
soon with IO TH.
2017-12-06 13:21:57 +01:00
vi e2d9556c6f Another example: CountUpgradeable.
Given a sequence of URIs on stdin, count the number we know how to
rewrite, together with the total number input. Coverage analysis?
2017-12-05 21:51:40 +01:00