N=1のとき無限ループしないようにcuteを使うと良さげ。 (use util.list) (define (overlaps xs n) (unfold (any-pred null? (compose null? cdr)) (cut take* <> n) (cute drop* <> (max 1 (- n 1))) xs)) (overlaps '(0 1 2 3 4 5 6 7 8 9) 2) ; => ((0 1) …
引用をストックしました
引用するにはまずログインしてください
引用をストックできませんでした。再度お試しください
限定公開記事のため引用できません。