Lifting doesn't change the 'shape', just the 'type'. By this I mean that lifting a function into, e.g., a List<A> results in a List<B>. The shape (List) doesn't change, but the specific type may.

You are right that it is similar to any other transformation. In fact, the standard operation map is the mechanism of 'lifting' a function of a single variable into the Functor (the datatype being mapped over). So, you can think of map as lift1, then you have lift2 (for functions of two variables), etc.

Related Query

More Query from same tag