DEV Community

Discussion on: Introduction to composable optics with monocle-ts

Collapse
 
mikesol profile image
Mike Solomon

Really cool stuff! One way that I've blended io-ts and monole-ts together is the use of the .is function in io-ts to replicate pattern matching in Haskell or OCaml. That helps especially in Prisms. So, for example...

new Prism<string | integer, string>(a => t.string.is(a) ? some(a) : none, s => s)
Enter fullscreen mode Exit fullscreen mode

Here, is is a primitive type of pattern matching that does the job both at runtime and at compile time (this is compile safe in typescript).