I'm experimenting with Uncle Dave's config which is using a minimum init.el to launch config.org, which is full of elisp babel source blocks. Here's his relevant launching code: (when (file-readable-p "~/.emacs.d/config.org") (org-babel-load-file (expand-file-name "~/.emacs.d/config.org"))) However, I've seen this example: (require 'org) (require 'ob-tangle) (org-babel-load-file (expand-file-name "~/.emacs.d/myemacs.org")) which seems to want (require 'ob-tangle). The Uncle Dave setup is working fine. I guess I don't know how it's tangling (which means running all the code blocks in the org file, right?) without somehow being told to. But then what is org-babel-tangle-file doing other than running all the code blocks in a file? And then there's the :tangle yes parameter on an individual code block. I'm missing something here. It seems org-babel-load-file is creating a config.el from the config.org -- which is a tangle behavior. LB