https://clojure.org/guides/repl/enhancing_your_repl_workflow#writing-repl-friendly-programs
@cfleming: Tools | REPL | Sync files in REPL, as recently discussed
sync basically works out which files you’ve changed and loads them all in dependency order. Load file also does that, except only starting with the file that you’re loading (i.e. that file and all its dependencies will be loaded if modified). sync will do that for all files, even if the current file doesn’t depend on them.
(require your.main :reload-all)
clojure.tools.namespace.repl/refresh-all