make NQueens more tail recursive

This commit is contained in:
Folkert 2023-06-21 17:21:41 +02:00
parent 284fd3ee6c
commit b349fca521
No known key found for this signature in database
GPG key ID: 1F17F6FFD112B97C

View file

@ -46,7 +46,10 @@ safe = \queen, diagonal, xs ->
when xs is when xs is
Nil -> Bool.true Nil -> Bool.true
Cons q t -> Cons q t ->
queen != q && queen != q + diagonal && queen != q - diagonal && safe queen (diagonal + 1) t if queen != q && queen != q + diagonal && queen != q - diagonal then
safe queen (diagonal + 1) t
else
Bool.false
length : ConsList a -> I64 length : ConsList a -> I64