Another Take at Monads: A Way to Generalize Chained Computations
We’ve talked about monads quite a lot on Rock the JVM. In this article, we’ll approach them from yet another angle.
We’ve talked about monads quite a lot on Rock the JVM. In this article, we’ll approach them from yet another angle.
Apache Kafka has proven itself as a reliable and scalable communication bus between distributed application components. We’ll learn to use ZIO to interact wi...
Referential transparency is your best tool for productivity as a functional programmer in Scala. In this article, we’ll talk about what it is and why it’s im...
In this article, I’ll show you how you can exploit the implicit resolution mechanism in Scala to enforce type relationships at compile time.
Showing a Scala 3 trick that few developers know: exploiting the absence of a given instance to enforce type relationships.
Many libraries implement the effect pattern in the Scala ecosystem, and every one has its own concurrency model. First, let’s introduce the ZIO library and i...
Once we learned the basics of functional programming, it’s time to understand how to use them to expose APIs over an HTTP channel. If we know the Cats ecosys...
Cats is a complex library for Scala. In this article, we’ll deconstruct the major type classes of Cats and explain how they’re connected.
In this article, we’ll go through the major testing styles with Scala and ScalaTest, and we’ll understand what ‘FunSuite’, ‘FlatSpec’ etc mean.
A short article with a powerful idea about functional collections many Scala programmers do not know about.