After reading Lindley's paper on effect handlers for arrows and applicatives, I got the gist about dynamic and static flow and that it was added to the effect system and so on. However, I do not understand two things about this paper:

  1. Why does it need that G unary operator? I kind of understand that you have to have another type to represent the function as an arrow, and that's how it was solved. I do not understand why is G needed for applicatives.
  2. Why it requires a lambda expression receiving a z of type B for both arrow and applicative handling? Does it mean that everything that's static gets dumped into scope?

I've read previous papers by Lindley on effect handlers, and I am familiar with arrows and applicatives in Haskell.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.