I was thinking about this the other day when trying to imagine a way to produce texture shaders through some kind of optimization. The connections between various nodes in a shader might be modeled as mutations, since they can't easily be modeled as continuous values.