# do Some expressions have implicit do blocks in them, making it unnecessary to use a do block ### when ;;; Don't (when test (do expr1 expr2)) ;;; Do (when test expr1 expr2) ### let ;;; Don't (let bindings (do expr1 expr2)) ;;; Do (let bindings expr1 expr2) ### Function body ;;; Don't (fn [] (do expr1 expr2)) ;;; Do (fn [] expr1 expr2)