This is where Lisp-like languages excel with macros. An example in Clojure:
(defmacro do* [body expr cond]
`(~expr ~cond
~body))
(do* (println "hello") if true)
(do* (println "hello") when-not (> 1 2))
replies(1):