Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I genuinely think that writing things in a message-passing/channel-based concurrency setup is often easier than doing things in single-core.

Obviously it's hard to get right, but a lot of the time doing a concurrent-first setup allows for a very clear separation of concerns (at least if you have a proper green threading solution). You can have one thread whose sole job is to do one thing, and then spit back the response onto a channel or respond to a pid. It's elegant and for me I find it fairly straightforward to reason about.

I do a lot of Clojure for my personal projects, and I will import core.async to a lot of projects, even for stuff that could be handled single-threaded, simply because I find it easier to reason about.



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

Search: