(bind-func foldl:[!b,[!b,!b,!a]*,!b,ADList{!a}*]* (lambda (fn start lst) (ADCons$ lst (x xs) (foldl fn (fn start x) xs) start)))