> FWIW, this behavior was introduced only recently: 24.3. It is true > for only this one Emacs release (so far). It is an incompatible > change from Emacs prior to 24.3, where (eq [] []) is nil. I found the emacs-devel thread for that: http://lists.gnu.org/archive/html/emacs-devel/2011-12/msg00112.html http://lists.gnu.org/archive/html/emacs-devel/2012-06/msg00112.html The addition of the zero_vector was tied into other changes of vector allocation, so I don't suppose there were benchmarks specifically for the zero_vector addition? > So we should fix the code so that there are at least "one empty > vector per vector type". Thanks for the allowance of "at least". It would be good to assess the performance impact of "(eq [] []) evaluates to nil".