def write_chunks

bendtorch@1.2.0.0 · main.bend:3334

import bendtorch@1.2.0.0/main.bend as Bendtorch
import Base

3334# k chunks of a's numbers lo .. n - 1
3335def write_chunks(k: Nat, f: File, a: Array<F32>, +lo: U32, +n: U32) -> IO(File & Array<F32>):
3336  match k:
3337    case 0n:
3338      IO.pure(File & Array<F32>, Tuple{f, a})
3339    case 1n+q:
3340      +hi = U32.min((lo + WCHUNK() : U32), n)
3341      wc_bytes(File & Array<F32>, f, chunk_bytes(U32.to_nat(U32.sub(hi, lo)), U32.sub(hi, 1), Array.get(F32, a, U32.sub(hi, 1)), []), f2 => a2 => write_chunks(q, f2, a2, hi, n))

Uses (18)

Used by (1)