Commit graph

4 commits

Author SHA1 Message Date
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
vi c26afe01cf Don't admit package-wise parameterisation of rulesets.
As 'a6f28e07a1edc8f62f3dfaf7965b3a818c2f4a7f' showed, there may be
breaking changes in the structure of rulesets between releases. I
don't intend to verify that every pair in the product works (is there
reason to be interested in any other than the latest?), so let's not
acommodate any more than one.
2015-11-08 00:53:35 +08:00
vi 1b46c03817 Added an example program; a HTTP proxy server redirecting to HTTPS when possible. 2015-11-07 18:14:19 +08:00