]> git.jsancho.org Git - gacela.git/blobdiff - src/gacela_misc.scm
(no commit message)
[gacela.git] / src / gacela_misc.scm
index c95abf5200e323d45465e89229d51e9fb7a29c9f..42c8841f7e0bf132848a09eab5a5b315b1f91a58 100644 (file)
 ;;; along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
+
+;;; 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)))))