meta-for Range also as DoubleRange { sbool rangesOverlap(Range a, Range b) { // ret max(a.min, b.min) <= min(a.max, b.max); ret intersectRanges(a, b) != null; } } sbool rangesOverlap(L l) { assertTrue(l(l) == 2); // TODO: more? ret rangesOverlap(first(l), last(l)); }