GP can be used to evolve iterative and general sorting algorithms - finding the perfect list sort algorithm is one of the 'classic' programming problems, and GP can be used to iterate towards the optimal sort function for a particular set of data.