Generate.list.go: def of bend-kit-property@0.4.0.0 Import: import bend-kit-property@0.4.0.0/generate.bend as Generate Lines 98-106 of bend-kit-property@0.4.0.0/generate.bend: https://jend.leeeet.dev/read.txt?path=bend-kit-property@0.4.0.0/generate.bend&start_line=98&end_line=106 import Base import bend-kit-random@0.1.0.1/random.bend as Rand # n + 1 items prepended to acc; hr holds the next item. def list.go(~T: Data, ~gen: Rand.Rng -> T & Rand.Rng, n: Nat, acc: List<&2, T>, hr: T & Rand.Rng) -> List<&2, T> & Rand.Rng: match n: case 0n: (h, r) = hr (h <> acc, r) case 1n+p: (h, r) = hr list.go(~T, ~gen, p, h <> acc, gen(r)) Uses (5): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=List https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Pair https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Sigma https://jend.leeeet.dev/definition.txt?path=bend-kit-random@0.1.0.1/random.bend&name=Rng