reimplement closure convert: free variable uncover; call identification