I use Vim with SLIME. Multiple splits, multiple tabs, multiple applications, can type stuff into a buffer and then SLIME can send that as commands to the applications.

For example, I use `psql` in a split, and doing `C-c C-c` sends the statement in my current buffer (delineated with newlines) to `psql`. I do the same with all other console applications.