8. A system comprising: one or more computers programmed to perform the following operations: receiving an initial message of a first user in a first language from a first chat client system; querying a data store for a first corresponding message in a second language, the first corresponding message being based on the initial message in the first language; determining that the data store does not include the first corresponding message and, based thereon: selecting an order for a plurality of different transformation modules based on the initial message, wherein each transformation module accepts as respective input a portion of a message and provides as respective output a transformed version of the respective input in the first language, and wherein the order is selected based on at least one of (i) precedence, (ii) a priority of transformation operations, (iii) a transformation operation that is most likely to generate a transformed message suitable for translation, and (iv) a transformation operation that generates a most formal transformed message; for each of one or more portions of the initial message, providing the portion as input to a first transformation module in the order and providing the respective output of each transformation module as the respective input to a following transformation module in the order; selecting the respective output of the last transformation module in the order as the transformed message in the first language; and querying the data store for a second corresponding message in the second language, the second corresponding message being based on the transformed message in the first language.
8. A system comprising: one or more computers programmed to perform the following operations: receiving an initial message of a first user in a first language from a first chat client system; querying a data store for a first corresponding message in a second language, the first corresponding message being based on the initial message in the first language; determining that the data store does not include the first corresponding message and, based thereon: selecting an order for a plurality of different transformation modules based on the initial message, wherein each transformation module accepts as respective input a portion of a message and provides as respective output a transformed version of the respective input in the first language, and wherein the order is selected based on at least one of (i) precedence, (ii) a priority of transformation operations, (iii) a transformation operation that is most likely to generate a transformed message suitable for translation, and (iv) a transformation operation that generates a most formal transformed message; for each of one or more portions of the initial message, providing the portion as input to a first transformation module in the order and providing the respective output of each transformation module as the respective input to a following transformation module in the order; selecting the respective output of the last transformation module in the order as the transformed message in the first language; and querying the data store for a second corresponding message in the second language, the second corresponding message being based on the transformed message in the first language. 28. The system of claim 8 wherein the respective output comprises an indication to ignore the respective output in subsequent processing.