;
; range (like in Python)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;
; Example:
; --------
; (range 1 10) => '(1 2 3 4 5 6 7 8 9 10)
; (range 1 10 2) => '(1 3 5 7 9)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define range
(lambda (min max . step)
; (println min max step)
(if (null? step)
(set! step '(1)))
(when (<= min max)
(cons min (range (+ min (car step)) max (car step))))))