(defun zip-assoc (lis1 lis2 &optional ret)
(while (and lis1 lis2)
(setq ret (acons (car lis1) (car lis2) ret)
lis1 (cdr lis1)
lis2 (cdr lis2)))
(reverse ret))
(setq auto-mode-alist
(append
(zip-assoc
'("\\.htm\\'" "\\.html\\'" "\\.hml\\'")
(make-list 3 'auto-interaction--mode))
auto-mode-alist))