There is currently a reddit thread about what people like to bind to M-n , M-p . Someone posted s?he likes to move lines of text around with these bindings. I have heard about this feature before but somehow forgot about it.

Working on my recently published emacs project I thought it would be nice to add the ability to do this with any text object. A few parentheses later I had it implemented and have to say, I quite like it. Here is a demo for you, showing me moving lines, words and textblocks around:

The above is also possible with strings, defuns, comments and so on. Here is another short example, where I’m flipping expressions around: