namesDefinedIn  names t
  =do (_,rd)<-hsFreeAndDeclaredPNs t
      return ((map pNtoName rd) `intersect` names)

--Get those free variables (used by the definition to be moved) that are not in scope in the destination module.
namesDefinedIn  names t
  =do (_,rd)<-hsFreeAndDeclaredPNs t
      return ((map pNtoName rd) `intersect` names)

--Get those free variables (used by the definition to be moved) that are not in scope in the destination module.
namesDefinedIn  names t
  =do (_,rd)<-hsFreeAndDeclaredPNs t
      return ((map pNtoName rd) `intersect` names)

--Get those free variables (used by the definition to be moved) that are not in scope in the destination module.