1. A computing system comprising: at least one processor; and at least one storage device having stored computer-executable instructions which, when executed by the at least one processor, implement a method comprising: receiving a plurality of generated programs that have been generated using one or more user input examples that are indicative of an output that should be achieved to comply with a user determined result; narrowing the generated programs based on one or more sub-expressions of the programs that are likely to cause a resultant generated program to comply with the user determined result; exposing the one or more sub-expressions; and receiving input that selects at least one of the one or more exposed sub-expressions to thereby identify the resultant generated program that will result in the user determined result.