Racket doesn&#x27;t get quite as bad (well it does but it tries to keep things looking like S-exps) but consider CL&#x27;s Loop macro <a href="http:&#x2F;&#x2F;www.unixuser.org&#x2F;~euske&#x2F;doc&#x2F;cl&#x2F;loop.html" rel="nofollow">http:&#x2F;&#x2F;www.unixuser.org&#x2F;~euske&#x2F;doc&#x2F;cl&#x2F;loop.html</a> loop is (from what I understand) idiomatic too. Yes it&#x27;s a macro (so is (defun ...) though) but it&#x27;s syntax a CLer needs to know in order to deal with CL in the wild. Format is famously even worse.