emacsでファイルを保存するたびにファイルをバックアップする設定を施しています。
現在init.elに定義してあるコードは以下になります。

;; バックアップファイルを世代管理して保存先を変更します。
(when (setq make-backup-files t)
  (setq backup-directory-alist
    (cons (cons "\\.*$" (expand-file-name "~/.emacs.d/backup"))
      backup-directory-alist))
  (setq version-control t)       ;; 複数のバックアップ世代を管理します。
;  (setq kept-old-versions 16)    ;; 古いものをいくつ残すか
  (setq kept-new-versions 256)   ;; 新しいものをいくつ残すか
  (setq delete-old-versions t)   ;; 確認せずに古いものを消します。
  (setq vc-make-backup-files t)) ;; バージョン管理下のファイルもバックアップを作ります。

;; 保存するたびにバックアップファイルを作成するようにします。
(global-set-key (kbd "C-x C-s")
 '(lambda () (interactive) (save-buffer 16)))

これでファイルを保存する度に~/.emacs.d/backupにバックアップファイルが作成され、ときどき消してしまったコードなどを復活させるために何度か助けられています。

すごく便利なのですが、~/.emacs.d/backupのなかに大量のファイルが作成され、dirredなどでディレクトリにアクセスするとものすごく重たいです。

これを1日毎に20150507というようなディレクトリを作成し、そこにバックアップファイルが保存されるようにしたいのですが、emacs lispにあまり詳しくないのでわかりませんでした。

投げっぱなしになっているような気もしますが、よろしければ改変したコードを教えていただけないでしょうか。