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, cause the computing system to perform at least the following: receive one or more input data comprising at least a set of semi-structured data and one or more examples of a user determined result to be derived from the set of semi-structured data; ascertain one or more characteristics from the one or more examples of the user determined output; based on ascertaining the one or more characteristics, receive an initial plurality of generated programs that have been generated, at least in part, by using the one or more ascertained characteristics; automatically narrow the initial set of generated programs to create a sub-set of generated programs, the sub-set of generated programs being chosen in part based on ranking a likelihood that one or more sub-expressions of the programs will cause a resultant generated program to comply with the user determined result; expose the one or more sub-expressions of the sub-set of generated programs; and receive user 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.