Hi All,
I found this write up instructive and well-written: https://www.quora.com/What-are-some-features-youd-want-a-new-programming-lan...
_,,,^..^,,,_ (phone)
On Fri, 26 Oct 2018 at 07:20, Eliot Miranda eliot.miranda@gmail.com wrote:
Hi All,
I found this write up instructive and well-written:
https://www.quora.com/What-are-some-features-youd-want-a-new-programming-lan...
Daan Leijen's done some interesting work in the area, to the extent of
having built a language that implements his research area (see https://github.com/koka-lang/koka and https://www.microsoft.com/en-us/research/project/koka/?from=http%3A%2F%2Fres...). He's implemented effects handling in C, too ( https://www.microsoft.com/en-us/research/publication/implementing-algebraic-... ).
Matija Pretnar wrote a decent introduction to the concept: https://www.eff-lang.org/handlers-tutorial.pdf.
The what's-in-it-for-me of effects handling is that it supplies, in a single tool/abstraction/structure, something that you can use to implement asynchrony (all the async/await stuff being added to languages), exception handling, iterators, and so on. (If this sounds a lot like continuations, that's because they're related!)
frank
On 10/29/2018 07:51 PM, Frank Shearar wrote:
The what's-in-it-for-me of effects handling is that it supplies, in a single tool/abstraction/structure, something that you can use to implement asynchrony (all the async/await stuff being added to languages), exception handling, iterators, and so on. (If this sounds a lot like continuations, that's because they're related!)
I'd imagine an effects library would be a fairly thin layer atop Squeak's exceptions, given that they already separate the handling from the decision to abort or resume!
That is to say, many non-aborting uses of Squeak's exceptions already has the feel of an effects system.
Cheers, Tony
PS. I implemented effects in Racket using its delimited continuations a few years ago: https://github.com/tonyg/racket-effects/blob/master/effects/main.rkt. It's quite possible a Squeak implementation could exploit OO techniques to make a very pleasant effects library.
squeak-dev@lists.squeakfoundation.org