]> git.mdlowis.com Git - archive/dlang-scm.git/commitdiff
Purge loop.scm from the codebase (no more evil imperative loops) refactor-loops
authorMike D. Lowis <mike@mdlowis.com>
Wed, 25 Jul 2012 15:35:28 +0000 (11:35 -0400)
committerMike D. Lowis <mike@mdlowis.com>
Wed, 25 Jul 2012 15:35:28 +0000 (11:35 -0400)
inc/loop.scm [deleted file]

diff --git a/inc/loop.scm b/inc/loop.scm
deleted file mode 100644 (file)
index a49428f..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-; For loop macro
-(define-syntax for
-  (syntax-rules ()
-    ((_ var lst body ...)
-      (let loop ((var (car lst)))
-        body ...
-        (if (< var (cadr lst))
-          (loop (+ var (caddr lst))))))))
-
-; While loop macro
-(define-syntax while
-  (syntax-rules ()
-    ((_ cnd body ...)
-      (if cnd
-        (let loop ()
-          body ...
-          (if cnd (loop)))))))
-
-; Until loop macro
-(define-syntax until
-  (syntax-rules ()
-    ((_ cnd body ...)
-      (let loop ()
-        body ...
-        (if (not cnd) (loop))))))
-