diff options
Diffstat (limited to 'iterative-add/iterative-add.scm')
-rw-r--r-- | iterative-add/iterative-add.scm | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/iterative-add/iterative-add.scm b/iterative-add/iterative-add.scm new file mode 100644 index 0000000..45c6cf9 --- /dev/null +++ b/iterative-add/iterative-add.scm @@ -0,0 +1,15 @@ +(define-module (iterative-add) + #:export (iterative-add-generator)) + +(define iterative-add + (let ((prev-num 0)) + (lambda (num) + (let ((result + (+ num prev-num))) + (set! prev-num num) + result)))) + +(define (iterative-add-generator num) + "Adds the previously received +number to the current one." + (iterative-add num)) |