Lisp is versatile as all get-out, so you can program however you want. For example, we can roll like it's 1969:
(prog ((a 0)
(b 1)
(c 0))
(declare (type Fixnum a b c))
:fb-start
(print a)
(incf b a)
(setf a
(- b a))
(incf c)
(when (< c 100)
(go :fb-start)))
Which actually supports the OP's original argument that even with training and getting used to, this syntax reads harder than