from Hacker News

CAF: C++ Actor Framework

by anarchyrucks on 3/1/20, 4:32 PM with 40 comments

  • by Mofu-chan on 3/1/20, 8:45 PM

    I was bored so I added CAF to pkgsrc, which you can use to install CAF on NetBSD/Linux/macOS and a variety of other Unix-ey platforms that pkgsrc supports:

    https://github.com/NetBSD/pkgsrc-wip/tree/master/actor-frame...

        git clone https://github.com/NetBSD/pkgsrc --depth 1 ~/pkgsrc  
        git clone https://github.com/NetBSD/pkgsrc-wip --depth 1 ~/pkgsrc/wip  
        cd ~/pkgsrc/bootstrap   
        ./bootstrap --unprivileged  
        cd ~/pkgsrc/wip/actor-model  
        ~/pkg/bin/bmake install    
        ~/pkg/sbin/pkg_info -L actor-model
    
    That is all.
  • by clarry on 3/1/20, 7:23 PM

    > Decoupling concurrently running software components via message passing avoids race conditions by design.

    How am I supposed to read this? It's obviously not "message passing eliminates race conditions", so perhaps it's intended to say something like "you need to design the components to avoid race conditions."

  • by Koshkin on 3/1/20, 8:04 PM

    Honestly, the source code of the examples looks rather complicated, like something that should better be generated from a nicer high-level language that has a native actor concept. (Obviously, the power of C++ templates does not come for free - you pay with noisy code and increased cognitive load.)
  • by zoomablemind on 3/1/20, 5:52 PM

    In the Docs:Overview [0], the compile and build instructions are not showing up for some reason.

    [0] https://actor-framework.readthedocs.io/en/latest/Overview.ht...

  • by thedance on 3/1/20, 9:08 PM

    "Actor" architecture is supposed to enable high developer productivity but it's been a decade since the article so I wonder how it's working out? The most prominent project of which I am aware is FoundationDB.
  • by clarry on 3/1/20, 8:36 PM

    If someone's got a nice actor library written in and for C, I'm all hears.
  • by nickysielicki on 3/2/20, 6:17 AM

    The activity around C++20 has gotten to the point where I’m skeptical of great libraries like this because I don’t want to learn something third-party when I might be able to use STL equivalents in just a few hundred days.