Text this: Specialization of functional logic programs based on needed narrowing.