Plaster

common-lisp
(defun bsort (L) (loop (unless (loop for index from 0 to (1- (length L)) for value in L when (and (/= (1+ index) (length L)) (> value (nth (1+ index) L))) do (progn (rotatef (nth index L) (nth (1+ index) L)) t)) (return L))))