Why didn't I do this ages ago?
(setq auto-mode-alist
(append `(("\\.p[lm]$" . cperl-mode)
(setq auto-mode-alist
(append `(("\\.p[lm]$" . cperl-mode)
+ ("\\.sage$" . python-mode)
("\\.m$" . objc-mode)
("\\.mxd$" . c-mode)
("\\.cs$" . csharp-mode)
("\\.m$" . objc-mode)
("\\.mxd$" . c-mode)
("\\.cs$" . csharp-mode)
(append `(("runlisp" . lisp-mode)
("@BASH@" . sh-mode)
("@PYTHON@" . python-mode)
(append `(("runlisp" . lisp-mode)
("@BASH@" . sh-mode)
("@PYTHON@" . python-mode)
("@PERL@" . cperl-mode)
("perl" . cperl-mode)
("@TCLSH@" . tcl-mode)
("@PERL@" . cperl-mode)
("perl" . cperl-mode)
("@TCLSH@" . tcl-mode)