On Sun, Mar 21, 2021 at 11:17:38PM +0100, Tomas Hlavaty wrote: [...] > What is the difference between #' and ' in emacs lisp? > Is it different from Common Lisp? It's in the docs. As ' is a shorthand for the special form quote, #' is a shorthand for function (call this a LISP-2 symmetry ;-) And function... the byte compiler "knows" about it: -- Special Form: function function-object This special form returns FUNCTION-OBJECT without evaluating it. In this, it is similar to ‘quote’ (*note Quoting::). But unlike ‘quote’, it also serves as a note to the Emacs evaluator and byte-compiler that FUNCTION-OBJECT is intended to be used as a function. Assuming FUNCTION-OBJECT is a valid lambda expression, this has two effects: • When the code is byte-compiled, FUNCTION-OBJECT is compiled into a byte-code function object (*note Byte Compilation::). • When lexical binding is enabled, FUNCTION-OBJECT is converted into a closure. *Note Closures::. When FUNCTION-OBJECT is a symbol and the code is byte compiled, the byte-compiler will warn if that function is not defined or might not be known at run time. so you help it make faster code and it helps you avoiding stupid errors. That what merketing people call "win-win situation" ;-) Cheers - t