Hacker News new | past | comments | ask | show | jobs | submit login

Yes, but are there any effects systems in use outside of maybe Haskell? Effects seem mostly to be stuck in the research lab and have been for a long time.



Verse has effects, which by virtue of exposing it to the entire Fortnite community probably makes it a bigger language than Haskell in terms of user counts.

https://dev.epicgames.com/documentation/en-us/uefn/specifier...

converges/diverges, computes, varies, reads, writes, transacts, no_rollback.


I don't mean "effects" in the sense where you can have effect handlers which get delimited continuations and all; it'd just mark what could happen (like checked exceptions). But I can't think of any languages with that and not effect handlers; Koka, Eff, and Unison come to mind for effects, though their practical-ness may vary.


Do you really need effect handlers as a separate feature once you have async/await? It seems like you could easily encode one with the other.


An effect handler is allowed to invoke a continuation multiple times; I believe this is not possible with async/await.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: