okamsn/loopy

Check consistency of `numbers`

Opened this issue · 1 comments

The following in SBCL 2.1.11 produces 3.

     (loop for i in '(1 2 3)
           for j from 1
           finally (return j))

The following in Emacs 29 produces 4.

     (cl-loop for i in '(1 2 3)
              for j from 1
              finally (cl-return j))

What does Loopy produce, with and without with binding? Are the two results the same? Which answer should we expect?

Confirmed that Loopy currently returns a different value depending on whether it is with bound.

;; => 3
(loopy (with (j 0))
       (numbers j :from 0 :to 3)
       (finally-return j))

;; => 4
(loopy (numbers j :from 0 :to 3)
       (finally-return j))