http://xahlee.info/emacs/emacs/elisp_cursor_position.html
Anonymous
Choose portability over efficiency.