What does "isomorphic" mean (in Haskell)?
Sometimes you’ll hear someone describe two things as being “isomorphic” to one another and I wanted to explain what that means.
You might have already guessed that “isomorphic” is a synonym for “equivalent”, and that would have been a pretty good guess. Really, the main difference between the two words is that “isomorphic” has a more precise and more general definition than “equivalent”.
In this post I will introduce a more precise definition of “isomorphic”, using Haskell code. This definition won’t be the fully general definition, but I still hope to give you some taste of how “isomorphic” can denote something more than just “equivalent”.
Source: What does "isomorphic" mean (in Haskell)?, an article by Gabriella Gonzalez.