Tak tohle bylo opravdu důkladné :)
Trochu mne překvapilo, že elisp povoluje ne-CL syntax finally return - v CL to je finally (return ...), ale je to opravdu tak.
Jedna článkem zdá se nepokrytá past je to, že klausule when (obdobně jako další) pokrývá jen následující klausuli, takže
(cl-loop for i from 0 to 10
when (oddp i)
count i into counter
sum i into total
finally return (list total counter))
vrací (55 5), nikoliv (25 5) jak by snad jeden čekal - k tomu by bylo třeba sum změnit na and sum. Možná i proto je častější vidět klauzule včetně do začínat na začátku řádku, ne jako v článku uprostred nebo na konci řádku.