Leonidas-from-XIV / orewa

An Async-friendly Redis binding
https://leonidas-from-xiv.github.io/orewa/
Other
15 stars 1 forks source link

subscribe commands #10

Closed lukepalmer closed 4 years ago

lukepalmer commented 4 years ago

Hey there, great work on this project.

I'm curious about implementing the subscribe family of commands. Because it essentially puts the client into a different state (where only a subset of commands are valid and the connection must be listened to continuously) the implementation might not be straightforward.

In case you have thought about it already: do you have ideas on what a subscription might look like? I may be able to take a look at implementation.

lukepalmer commented 4 years ago

On second thought: I have a pretty reasonable idea for a first pass at this.

Leonidas-from-XIV commented 4 years ago

Sorry, I somehow missed your issue. I don't quite have an idea (nor have I looked at PubSub yet), though the "different state" is the same case as with transactions, which can probably be solved in terms of Applicatives. I am still exploring the space and so far haven't been able to come up with a sensible implementation. I might study vcaml though, how they did it.

Whether the same solution can be used by PubSub I don't yet know.