There was one use each of `union' and `delete-if', both of which have been
translated to non-CL functions. This means that smex does not depend on CL at
all. The `(require 'cl)' can be removed because there aren't any CL macros being
The recommended way to make a buffer read-only from elisp is to set
`buffer-read-only' to non-nil. For making temporary edits to the buffer, setting
`inhibit-read-only' to non-nil overrides the read-only status of the buffer.