;;;; srfi-19-common.scm -*- Scheme -*- ;; -- Miscellaneous Constants. (define-constant MS/NS 1000000) (define-constant MuS/NS 1000) (define-constant MS/S 1000) (define-constant MuS/S 1000000) (define-constant NS/S 1000000000) (define-constant -NS/S -1000000000) (define-constant SEC/YR 31536000) ; seconds in a year (define-constant SEC/DY 86400) ; seconds in a day (define-constant SEC/DY/2 43200) ; seconds in a half day (define-constant SEC/HR 3600) (define-constant SEC/MIN 60) #;(define-constant iNS/S 1000000000.0) #;(define-constant iSEC/DY 86400.0) #;(define-constant iONE-HALF 0.5) (define-constant HR/DY 24) (define-constant DY/WK 7) (define-constant DY/MN 31) ;maximum days per month (define-constant DY/YR 365) ;normal days per year (define-constant MN/YR 12) ;months per year ;; #| ;MUST be a constant! (define-constant *date-tag* 'srfi-19#date) (define-constant *time-tag* 'srfi-19#time) (define-constant *date-timezone-info-tag* 'srfi-19#date-timezone-info) (define-constant *time-period-tag* 'srfi-19#time-period) |# ;; misc-utils (define-inline (->boolean obj) (and obj #t)) (define-inline (true? obj) (and (boolean? obj) obj)) (define-inline (false? obj) (not? obj)) ;; fx-utils (define-inline (fxabs x) (if (fx< x 0) (fxneg x) x)) (define-inline (fxzero? x) (fx= 0 x))