Working with Iso
So far, we have looked at lens and traversals which are aimed at focusing on a particular field(s) from the context of accessing or changing its value. In this recipe, we will look at Iso which represents isomorphism between two types. It is possible to go back and forth between two types. For example, we can convert from Text to String and vice versa.
How to do it...
- Create a new project
working-with-iso
with asimple
stack template:
stack new working-with-iso simple
- Add a dependency on the lens library in the
build-depends
sub-section of theexecutable
section. Also, add a dependency ontext
andbytestring
and add thequicklz
library for compression utility:
executable working-with-iso hs-source-dirs: src main-is: Main.hs default-language: Haskell2010 build-depends: base >= 4.7 && < 5 , lens , text , bytestring
Note
Note that, at the time of writing...