current
window :: (KnownNat n, Default a)
-> Signal a
-> Vec (n + 1) (Signal a)
proposed
window :: (KnownNat n, Default a)
-> Signal a
-> Vec n (Signal a)
This makes auto type deduction simpler and possible in cases where (n+1) becomes unmanageable.
Possible implementation:
window = iterateI (register def)