Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
This is neat, and I tried going down the road of using Divisible for things years ago. This can be seem in a very old version of siphon's test suite. The data type for a CSV encoding has a trivial Divisible instance. However, as tekmo hints at in the post, the ergonomics of Divisible are pretty bad. Bad enough that I ended up just giving up on it (well, I had to decide if I wanted to swap the order of some type arguments to become a Profunctor, and I did not mourn the loss of the Divisible instance). Perhaps with the right syntactic sugar, it could be more useful.
The operator also pops up in George Wilson's 2018 talk, Contravariant Functors: the Other Side of the Coin, along with (>*) and (*<) operators to help things along. Shortly after its publication, Issue #57 for contravariant was raised, suggesting not only (>*<) but the other operators from George's talk.