I will present a new computational model based on the notion that computation can be expressed in an information preserving manner. This appears to be in direct conflict with models like the the lambda calculus or boolean circuits where basic computation units are combinators like S and K or NAND and FANOUT that freely duplicate or drop arguments. Every program expressible in this model is an isomorphism and it provides a crisp notion of information preservation. Finally, I will address completeness and talk about the embedding of a the first-order fragment of the simply-typed lambda-calculus into this model.