Conversation

is there a framework or name for this pattern showing up in metalanguages: there is a "commutation" between e.g. representation of list of t, and list of representations of t: r (l t) <-> l (r t)
1
1
this pattern pops up everywhere and seems to be related to things like loop transformations... basically talking about "intuitively these are the same, but you're going to have to do some work to translate manually"
1
Replying to
not really sure where i'm going with this... just wondering if this rings a bell... maybe a general idea of commutation of type constructors? something i don't know how to express in any language
1
probably the thing that expresses why commutation works is the program you have to write, not something you can derive from some higher abstraction...