(bind-func pmap:[List{!a}*,[!a,!b]*,List{!b}*]* (lambda (func xs) (let ((futures (map (lambda (x) (async func x)) xs)) (results (map (lambda (y) (y)) futures))) results)))