A Wrapper places a value inside a safety container. Direct access is unavailable; functions transform the contained value through mapping, preserving a controlled boundary around potentially unsafe data. section 5.2
Transforming a wrapped value
const two = wrap(2);\nconst five = two.fmap(plus3); // Wrapper(5)\nfive.map(R.identity); // 5\n\ntwo.fmap(plus3).fmap(plus10); // Wrapper(15)\n\nUse fmap to transform while keeping the value wrapped; use map with the identity function to extract it.
