Top 23 Fp Open-Source Projects
Generic programming for ScalaProject mention: [Scala3] Get the type of container with wildcard type (i.e. List[?]) | reddit.com/r/scala | 2021-03-01
Well, that is sometimes possible, depending on a structure of Foo. If you have a List, for instance, you can iterate every element, and if every element is A, then it's safe to cast a list to List[A]. In fact, shapeless provides exactly that, in form of Typeable[List[A]], in a more generic form. I suppose shapeless also can derive a typeable instance for you, but I haven't dug into scala 3 version of it.
Compositional, streaming I/O library for ScalaProject mention: Is there a library which allows to manage websocket connections? | reddit.com/r/scala | 2021-03-01
The other day I was also trying to get rid of akka stack and replaced it with http4s for server and sttp for client (http4s websocket client support is in open state for more than 5 years for now: https://github.com/http4s/http4s/issues/330). It still works pretty well, especially since they both can be built from fs2 steams.
Get performance insights in less than 4 minutes. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.
Functional JDBC layer for Scala.
Asynchronous, Reactive Programming for Scala and Scala.js.Project mention: Alternative to RxJava/RxScala | reddit.com/r/scala | 2021-02-08
The Observer is a bit different, it returns Future[Ack] for built-in back-pressure. We can Continue / Stop synchronously or asynchronously.
Make your functions return something meaningful, typed, and safe!
Facebook's React on Scala.JSProject mention: Scala JS SPA skeleton | reddit.com/r/scala | 2021-01-24
I use scalajs-react to make SPAs with Scala.JS (although disclaimer: I'm the author).
The pure asynchronous runtime for ScalaProject mention: Feedback on my implementation of an asynchronous semaphore | reddit.com/r/scala | 2021-02-27
But reconciling two atomic refs seems overcomplicated even if it were sound, which I'm not sure is the case here. Instead, you can smoosh both permits and waiters to a single atomic state. This is similar to how cats effect implements semaphore (see their atomic state here)
Faster and smaller alternative to Ramda
Funktional generic type-level programming in Rust: HList, Coproduct, Generic, LabelledGeneric, Validated, Monoid and friends.Project mention: Generic associated types encode higher-order functions on types | reddit.com/r/rust | 2021-01-04
I wonder if frunk can (ab)use this kind of trick to make their crate even more powerful. IIRC they have a bunch of amazing and horrible workarounds to work with type-level lists.
Expressive types for Spark.Project mention: Spark scala v/s pyspark | reddit.com/r/dataengineering | 2021-02-24
The preferred way to write Spark programs is to use DataFrame API which is untyped and is essentially the same in Scala, C# and Python. It's a DSL that's used to describe AST of the computation and the end result is the same regardless of language. There's a library called Frameless (https://github.com/typelevel/frameless) that implements typed DataFrame API but it is not in wide use, it looked dead for quite some time (though now development seems to continue) and didn't play nice with IntelliJ IDEA last time I checked. Performance-wise there's no difference most of the time (since all the program does is create an AST) except when using UDFs - Python UDFs are significantly slower and you can't write "proper" UDFs in Python - ones that generate Java code.
🏹 Bow is a cross-platform library for Typed Functional Programming in Swift
A multiplatform Result monad for modelling success or failure operations.Project mention: Everywhere I go, I miss Rust's `enum`s | reddit.com/r/rust | 2021-01-26
Should I use someone else's: https://github.com/michaelbull/kotlin-result or https://arrow-kt.io/docs/apidocs/arrow-core-data/arrow.core/-either/ ?
The documentation you linked to is pretty out of date, plus it was renamed to effect-ts: https://github.com/Matechs-Garage/effect-ts I have 3 services in production written with this. It's great.
:shopping_cart: The Shopping Cart application developed in the book "Practical FP in Scala: A hands-on approach"Project mention: Example of building web apis (functionally) in Scala | reddit.com/r/scala | 2021-02-16
Read the book "Practical FP in Scala" by Gabriel Volpe _(aka gvolpe). - This one to see how to use all the previous knowledge on building a real-world application.
Random Data Generation and/or Property Testing in Scala & Scala.JS.
:izakaya_lantern: Standalone examples shown in the book "Practical FP in Scala: A hands-on approach"Project mention: Example of building web apis (functionally) in Scala | reddit.com/r/scala | 2021-02-16
I'm working my way through this book, and it is excellent. Accompanying the book are some repos that you can check out. The book implements the repos.
A functional language for C99 preprocessor metaprogrammingProject mention: Metalang99: Full-blown C99 preprocessor metaprogramming | news.ycombinator.com | 2021-02-26
⚡ Pattern Matching in TypescriptProject mention: Pattern-matching-ts: Pattern Matching in TypeScript | news.ycombinator.com | 2021-02-15
A Future-free Fs2 native pure FP Redis client
A simple functional programming library for PHP
What are some of the best open-source Fp projects? This list will help you: