diff --git a/ice-9/boot-9.scm b/ice-9/boot-9.scm index 50c21e80f..cd8fcc543 100644 --- a/ice-9/boot-9.scm +++ b/ice-9/boot-9.scm @@ -774,6 +774,15 @@ (define (log10 arg) (/ (log arg) (log 10))) +(define (numerator q) + (do ((num q (* 2 num))) + ((integer? num) num))) + +(define (denominator q) + (do ((num q (* 2 num)) + (den (- q q -1) (* 2 den))) + ((integer? num) den))) + ;;; {Reader Extensions}