No long-winded Functional Programming blog post today, since I've been giving my writing efforts to drawing up a proposal for changing the way Gnu Emacs handles key bindings.
The short version is that it is currently very difficult to go against Emacs conventions with your key bindings, as most new modes (quite rightly) mimic them. I think an additional layer of indirection would be useful here, as we can then associate key bindings with behaviours, and functions with behaviours, rather than key bindings with functions. If modes are written to associate their new functionality with the appropriate behaviour-function binding, then Emacs users who favour different conventions, e.g. CUA or vim-like bindings, get to take advantage with no additional effort, since the key binding for a behaviour didn't change.
I will be updating this gist over time, and hopefully getting different perspectives and corrections, so that I don't get completely taken to pieces when I bring it up on emacs-devel. :)