[HN Gopher] Parallel streaming in Haskell: Part 1 - Fast, effici... ___________________________________________________________________ Parallel streaming in Haskell: Part 1 - Fast, efficient, and fun Author : rkrzr Score : 47 points Date : 2023-01-04 13:03 UTC (9 hours ago) (HTM) web link (www.channable.com) (TXT) w3m dump (www.channable.com) | eikenberry wrote: | Nice to see more articles on data flow techniques. They deserve | way more attention as a great whole program model for all sorts | of problem domains. | WJW wrote: | I enjoy programming in conduits but somehow never come across a | big enough problem to really make use of them. They encapsulate a | whole class of problems in a very comprehensible and modular way. | The higher order conduits like `scanlC` and friends also enable | more complicated ideas than just the usual `map` and `reduce` | variants you usually see. It's quite straightforward to model all | sorts of chat-/websocket-/trading-bots as conduits for example, I | wrote a blog post about it at | https://wjwh.eu/posts/2022-05-06-haskell-conduit-bots.html. | | Btw @rkrzr I hope you don't mind me asking but "niet geschoten is | altijd mis": are you looking for freelance assistance at the | moment at all? I've been consistently impressed by the | engineering work done at Channable, for example the Aho-Corasick | work and the stuff relating to compact regions, but am not able | to commit to fulltime work at the moment. Lately I've been mostly | working with Ruby and DBA/db performance stuff, but Haskell is | the first language I got properly good at and it will always have | a warm place in my heart. I'm pretty experienced at the | intersection between backend dev and DBA/devops type problems and | if you are experiencing any problems in that area I would love to | help out there. Looking at the channable github page, I just | realized I even made made some PRs for Icepeak way back in 2020. | :) | valcron1000 wrote: | You don't need to use them in "big enough problems". I've used | them with great success in a microservice architecture: had to | consume some events, do some processing and spit out some data | into Kafka. Absolute straightforward code, I could just focus | on the "processing" part and ignore the boring plumbing. I'm | sure that a lot of apps fit this pattern really well: consume | data, processing, spit new data. ___________________________________________________________________ (page generated 2023-01-04 23:01 UTC)