about summary refs log tree commit diff stats
path: root/nqueens.mu
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2016-11-22 11:14:43 -0800
committerKartik K. Agaram <vc@akkartik.com>2016-11-22 11:14:43 -0800
commit93c9862fa74043f2b0fa616fcc28aee66bc05037 (patch)
tree7c1439b100a09c1db34aa51cc5d545ce76cdde89 /nqueens.mu
parent79cb6ea54e7ef76cf3768ec06a0510296b8ac5e9 (diff)
downloadmu-93c9862fa74043f2b0fa616fcc28aee66bc05037.tar.gz
3681
Couple of fixes to example programs.
Diffstat (limited to 'nqueens.mu')
-rw-r--r--nqueens.mu7
1 files changed, 4 insertions, 3 deletions
diff --git a/nqueens.mu b/nqueens.mu
index eb4f8493..95955784 100644
--- a/nqueens.mu
+++ b/nqueens.mu
@@ -8,7 +8,7 @@ container square [
   file:num
 ]
 
-def nqueens n:num, queens:&:list:square -> result:num [
+def nqueens n:num, queens:&:list:square -> result:num, queens:&:list:square [
   local-scope
   load-ingredients
   # if 'queens' is already long enough, print it and return
@@ -36,9 +36,10 @@ def nqueens n:num, queens:&:list:square -> result:num [
     {
       curr-conflicts?:bool <- conflict? curr, queens
       break-if curr-conflicts?
-      new-queens:&:list:square <- push curr, queens
-      sub-result:num <- nqueens n, new-queens
+      queens:&:list:square <- push curr, queens
+      sub-result:num <- nqueens n, queens
       result <- add result, sub-result
+      queens <- rest queens
     }
     next-file <- add next-file, 1
     loop