;; time in samples (starting from 0) ;; apex (in samples) is after how many samples we hit 1.0 before decaying (bind-func static impulse (lambda (time:i64 apex:i64) (let ((h:SAMPLE (convert (/ time apex)))) (* h (exp (- 1.0 h))))))