mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-18 21:29:19 +02:00
20 lines
672 B
Scheme
20 lines
672 B
Scheme
|
|
(define-library (chibi iset optimize)
|
|
(cond-expand
|
|
(chibi (import (chibi) (srfi 9)))
|
|
(else (import (scheme base))))
|
|
(import (chibi iset base)
|
|
(chibi iset iterators)
|
|
(chibi iset constructors))
|
|
(cond-expand
|
|
((library (srfi 142)) (import (srfi 142)))
|
|
((library (srfi 33)) (import (srfi 33)))
|
|
(else
|
|
(import (srfi 60))
|
|
(begin
|
|
(define (%mask size) (bitwise-not (arithmetic-shift -1 size)))
|
|
(define (extract-bit-field size position n)
|
|
(bitwise-and (%mask size) (arithmetic-shift n (- position)))))))
|
|
(include "optimize.scm")
|
|
(export
|
|
iset-balance iset-balance! iset-optimize iset-optimize! iset->code))
|