X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=src%2Fgacela_misc.scm;h=42c8841f7e0bf132848a09eab5a5b315b1f91a58;hb=023823491bfe1a64e136bcc2d47c6ec5803f23bf;hp=c95abf5200e323d45465e89229d51e9fb7a29c9f;hpb=6a3d1ffb69036e6d4f1c239fd7d52f9bfc48d50c;p=gacela.git diff --git a/src/gacela_misc.scm b/src/gacela_misc.scm index c95abf5..42c8841 100644 --- a/src/gacela_misc.scm +++ b/src/gacela_misc.scm @@ -15,3 +15,20 @@ ;;; along with this program. If not, see . + +;;; Additional modules + +(use-modules (srfi srfi-1)) + + +;;; Functions + +(define (nearest-power-of-two n) + (define (power p n) + (cond ((> (* p 2) n) p) + (else (power (* p 2) n)))) + (power 1 n)) + +(define-macro (pushnew elem list) + `(cond ((not (find (lambda (e) (eq? e ,elem)) ,list)) + (set! ,list (cons ,elem ,list)))))