This is indeed the lein-try for tools-deps. Published libraries can be loaded but also github/gitlab/sourcehut-projects (as long as $project_root/deps.edn exists).
Rebel-readline (vendored and extended in this project) is essentially a tiny IDE as it provides syntax highlighting, formatting, code completion, docs, show source, show examples etc.
As an exercise you could do on a REPL what a macro would do.
Say you have a file containing “(1 + 1)”. Reading this (using slurp and read-str) would yield a list, eval-ing this list would however fail as it’s not valid Clojure.
To make it eval-able you transform the list (all the operations of the language are at your disposal as you’re just handling data) to (+ 1 1). It’s this operating on data between read and eval that macros do.
This is definitely a first step.
The thing is that with 'attr_accessible' a lot of interaction with your models gets harder (think testing or working from the console).