The times macro (defmacro laat/times (n fn arg) (cons 'thread-last (cons arg (cl-loop for i below n collect fn)))) (laat/times 3 sqrt 256) expands to (sqrt (sqrt (sqrt 256)))