Skip to content

Commit 78c2962

Browse files
committed
overtake
1 parent 1b35647 commit 78c2962

1 file changed

Lines changed: 19 additions & 3 deletions

File tree

verbs.go

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -258,12 +258,28 @@ func ntake(n int32, y K) K {
258258
SetI32(yp-12, n)
259259
return y
260260
}
261-
r = seq(n)
262-
if n > yn && yn > 0 {
263-
r = Mod(r, Ki(yn))
261+
if n > yn {
262+
r = seqm(n, yn)
263+
} else {
264+
r = seq(n)
264265
}
265266
return atv(y, r)
266267
}
268+
func seqm(n, m int32) K {
269+
r := mk(It, n)
270+
k := int32(0)
271+
p := int32(r)
272+
e := p + n<<2
273+
for p < e {
274+
SetI32(p, k)
275+
k++
276+
if k == m {
277+
k = 0
278+
}
279+
p += 4
280+
}
281+
return r
282+
}
267283
func Drp(x, y K) K { // x_y
268284
xt := tp(x)
269285
yt := tp(y)

0 commit comments

Comments
 (0)