8. A computer-implemented method of processing a query operation, comprising: employing a processor to execute computer executable instructions stored on a computer storage medium to perform the following acts: receive a query as a query expression, wherein the query utilizes the query expression assigned to a variable, the query expression including a Select operator followed by a definition of a non-denotable anonymous type; using a compiler that infers a composite type of the variable based on the expression assigned to the variable and outputs the non-denotable anonymous type, wherein the composite type comprises one or more members and is the non-denotable anonymous type, interact with the processor to, upon request, perform the following: initiate a compile process on the query; convert the non-denotable anonymous type into a statically typed query that is a structurally compatible nominal type that is a static type generated by the compiler and includes a nominal type, wherein the compiler ensures consistent use of variables at compile time based on, at least in part, the nominal type; test for type compatibility of the nominal type and the non-denotable anonymous type based on, at least in part, a relationship between a field of the unrealized non-denotable anonymous type and a member of the nominal type; and convert an unrealized structural type to a synthesized nominal type, wherein the synthesized nominal type is a type generated by the compiler, wherein the compiler generates the synthesized nominal type by creating a normal class definition with a multi-character name, and wherein the normal class definition comprises a field associated with a member of one or more members of the non-denotable anonymous type or a property associated with the member of the one or more members of the non-denotable anonymous type.
8. A computer-implemented method of processing a query operation, comprising: employing a processor to execute computer executable instructions stored on a computer storage medium to perform the following acts: receive a query as a query expression, wherein the query utilizes the query expression assigned to a variable, the query expression including a Select operator followed by a definition of a non-denotable anonymous type; using a compiler that infers a composite type of the variable based on the expression assigned to the variable and outputs the non-denotable anonymous type, wherein the composite type comprises one or more members and is the non-denotable anonymous type, interact with the processor to, upon request, perform the following: initiate a compile process on the query; convert the non-denotable anonymous type into a statically typed query that is a structurally compatible nominal type that is a static type generated by the compiler and includes a nominal type, wherein the compiler ensures consistent use of variables at compile time based on, at least in part, the nominal type; test for type compatibility of the nominal type and the non-denotable anonymous type based on, at least in part, a relationship between a field of the unrealized non-denotable anonymous type and a member of the nominal type; and convert an unrealized structural type to a synthesized nominal type, wherein the synthesized nominal type is a type generated by the compiler, wherein the compiler generates the synthesized nominal type by creating a normal class definition with a multi-character name, and wherein the normal class definition comprises a field associated with a member of one or more members of the non-denotable anonymous type or a property associated with the member of the one or more members of the non-denotable anonymous type. 10. The method of claim 8 , wherein the non-denotable anonymous type is converted into a statically typed Select query, and wherein: values of the non-denotable anonymous type cannot be passed as arguments to methods, or returned as results from non-generic methods; conversion of the non-denotable anonymous type is to a nominal type through type inference when an inference can be made, and to a compiler-generated nominal type when no inference can be made.