Yeah, it's a pretty good idea. I've been using lisp and expand-region[1] and it just makes this frame-based editing dream come alive.
I've just recorded a video where I'll refactor some code for fun. This code adds two arrays one has strings in it like ["1" "2" "3"] the other has numbers like [1 2 3].
Video: https://s3.us-east-2.amazonaws.com/photoblobs/2017-06-22_003...
I do have a couple typos / mis-compiles but that's sort of par for the course. Hope you enjoy!