Eitan Chatav retweeted
In 1945 Richard Feynman’s wife died. Afterwards he wrote her a love letter. At its end he apologized for not mailing it because he didn’t have her current address. The letter was found among his effects after he died in 1988.
A `DisjunctiveMonoid` is just a monoid. The only difference is semantic. It means "or" disjunction. One wishes that `Alternative f` implied `DisjunctiveMonoid (f x)`, but we can have the next best thing and use `Alternative` for default methods.
JSON tuples are static arrays like Haskell tuples. By allowing array type widening, we can actually give tuples the full `Alternator` combinator set over JSON values.
Everything is abstracted behind typeclasses; that is all that is meant by "tagless final" embedding. You can make new grammar generators (like printers, parsers and typescript types) and new grammars separately but compatibly.



