Scala Concurrency

Open-source Scala projects categorized as Concurrency

Top 7 Scala Concurrency Projects

  • Akka

    Build highly concurrent, distributed, and resilient message-driven applications on the JVM

    Project mention: Modern Async Primitives on iOS, Android, and the Web | dev.to | 2023-12-06

    Kotlin also has a construct for asynchronous collections/streams. Kotlin's version of AsyncSequence is called a Flow. Just as Swift's AsyncSequence builds upon prior experience with RxSwift and Combine, Kotlin's Flow APIs build upon earlier stream/collection APIs in the JVM ecosystem: Java's RxJava, Java8 Streams, Project Reactor, and Scala's Akka.

  • ZIO

    ZIO — A type-safe, composable library for async and concurrent programming in Scala

    Project mention: The golden age of Kotlin and its uncertain future | news.ycombinator.com | 2024-01-11
  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • Scala Async

    An asynchronous programming facility for Scala

  • incubator-pekko

    Build highly concurrent, distributed, and resilient message-driven applications using Java/Scala

    Project mention: Is akka still worth learning to be employable? | /r/scala | 2023-12-07

    Pekko is open source, has the same API. So there's no problem there.

  • ox

    Safe direct-style concurrency and resiliency for Scala on the JVM (by softwaremill)

    Project mention: Java21/Virtual threads, simplest the most boring scala http server stack ? | /r/scala | 2023-09-24

    I want to just block as if there's no tomorrow, no effects / hardcore FP (maybe only something like https://github.com/softwaremill/ox), what would you use? E.g. for http server / db / json ?https://github.com/com-lihaoyi/cask ?

  • libretto

    Declarative concurrency and stream processing library for Scala

    Project mention: Synit – A Reactive Operating System | news.ycombinator.com | 2023-07-15

    I'm not sure this is actually easy to solve. The basic idea here seems to be that actors coordinate with the help of shared mutable state (the "dataspace"). At this point you're actually back to square one as synchronizing shared state is the core problem with distributed, concurrent systems…

    Given that, and the fact that this whole thingy is untyped makes me skeptical. Not even the std. ingredients like type-state, session types, behavioral types, or the like seem to get used. I also don't see linear types here, which go very well with session types / behavioral types, and can help making typing message passing easier.

    Also that this approach would be completely network transparent, as I see it, seems like a design flaw. One needs control over the various effects that can occur! Otherwise the points form "distributed systems future work" can't be solved, imho.

    And form the practical point of view: There is no Akka / Pekko based Scala implementation? I'm quite surprised, to be honest.

    Akka / Pekko is the actor runtime, and Scala is famous for it's eDSL features; besides of course its type-system, which makes thing like Libretto possible, which seems related here:

    https://github.com/TomasMikula/libretto

    Syndicate-lang looks OTOH more like the usual callback-hell.

    But like I've said, I don't get this whole thingy really. I've just clicked through some parts of the web-sites. Most likely I'm just overlooking the elephant in the room. So would be glad to learn more!

    (BTW: Very nice web-site design on all the projects. Especially nice typography. Really enjoyed this part while clicking through this stuff.)

  • batcher

    Batch similar requests together transparently

    Project mention: Library for batching requests | /r/scala | 2023-04-02
  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2024-01-11.

Scala Concurrency related posts

Index

What are some of the best open-source Concurrency projects in Scala? This list will help you:

Project Stars
1 Akka 12,889
2 ZIO 3,961
3 Scala Async 1,137
4 incubator-pekko 981
5 ox 270
6 libretto 189
7 batcher 17
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com