Thanks for the info. Based on what the differences described, it looks like #$ is what I want to use. On Fri, Nov 13, 2009 at 9:26 AM, Stefan Monnier wrote: > > In fact I'd be curious to learn the differences between it > > and *load-file-name.* > > The difference is the time at which the expansion takes place (either > read-time or eval-time). > E.g. try > > (defun foo () (interactive) (message "%s" #$)) > and > (defun foo () (interactive) (message "%s" load-file-name)) > > if you load a file containing one of the above lines and then you do > M-x foo RET you should see that the first returns the file name > (i.e. the value of load-file-name at the time the file was read) whereas > the other returns nil (the value of load-file-name at the time you > called `foo'). > > > Stefan >