Creating lenses with Swift macros (usecase for arbitrary names at the global scope)

Slava’s response regarding the use of the term “isomorphism” from another thread is highly relevant here as well. The claim is not that there is no way to observe the difference between the two functions within the language semantics, but rather that you can transform a (T) -> T into an (inout T) -> Void and vice versa in such a way that the composition of those transformations is the identity transformation.

10 Likes