Excellent. Just what I had in mind with this Community post and this related blog post.
As Carlos points out, the fitness function Range[x] is just for demonstration purposes. As i wrote in my post:
The initial exercise described above is about the mechanics of the process rather that the outcome. The second stage is much more challenging, as the goal is to develop new functionality, rather than simply to replicate what already exists. It would entail defining a much more complex objective function, as well as perhaps some constraints on program size, the number and types of WL objects used, etc. An interesting exercise, for example, would be to try to develop a metaprogramming system capable of winning the Wolfram One-Liner contest. Here, one might characterize the objective function as something interesting and surprising, and we would impose a tight constraint on the length of programs generated by the metaprogramming system to a single line of code. What is interesting and surprising? To be defined thats a central part of the challenge. But, in principle, I suppose one might try to train a neural network to classify whether or not a result is interesting based on the results of prior one-liner competitions.
All-in-all a great start by Carlos, which hopefully will open up the field to others, now that there is a clear path to follow.