Functional Programming

An Overview of Apache Beam Features

Reading Time: 3 minutes We’ll talk about Apache Beam in this guide and discuss its fundamental concepts. We will begin by showing the features and advantages of using Apache Beam, and then we will cover basic concepts and terminologies. Ever since the concept of big data got introduced to the programming world, a lot of different technologies and frameworks have emerged. The processing of data can be categorized into Continue Reading


The best CODE Migration TOOL for SCALA Explained

Reading Time: 2 minutes Introduction With Scalafix, you can focus on the changes that truly merit your time and attention rather than having to deal with easy, repetitive, and tedious code transformations. Scalafix is the best code migration tool for Scala and transforms unsupported features in source files into newer alternatives and writes the result back to the original source file. Scalafix may not be able to perform automatic Continue Reading

Introduction to zio-json | Encoding Decoding

Reading Time: 2 minutes In this blog we discuss how encoding and decoding of data is perform in zio using the zio-json. According to ZIO documentation, we know ZIO is a library for asynchronous and concurrent programming that promotes pure functional programming. At the core of ZIO is ZIO, a powerful effect type inspired by Haskell’s IO monad.The ZIO[R, E, A] data type has three type parameters: R – Environment Type:- The effect requires an environment Continue Reading

How To Convert Text to Speech In JavaScript

Reading Time: 3 minutes Ever wondered what it would be like to build your own screen reader? With the Web Speech API, this is an achievable task. In this article, we’ll be building a basic text-to-speech reader. let’s take a look at how can we convert text to speech in javaScript. Prerequisites To follow along with this blog, you should have: A basic understanding of HTML and JavaScript. A Continue Reading

What is new In Project Loom

Reading Time: 2 minutes Project loom is an OpenJDK project that aims to enable “easy-to-use, high-throughput lightweight concurrency and new programming models on the Java platform.” Before Project Loom As of now, we know that the basic unit of concurrency is Thread. Thread map 1-1 to kernel Threads and these threads work well but they also have certain limitations which are as follows:- Expensive To Create:- Below are a Continue Reading

How to Compose Layers in Zio

Reading Time: 5 minutes Introduction According to ZIO documentation, we know ZIO is a library for asynchronous and concurrent programming that promotes pure functional programming. The core of the ZIO library provides a powerful effect type ZIO inspired by Haskell’s IO monad. The value of this type doesn’t do anything itself. It is just a description of something that should be done.ZIO runtime system is responsible for actually doing what is Continue Reading

Composing and Chaining Effects together in ZIO

Reading Time: 3 minutes Introduction to ZIO ZIO is a library for asynchronous and concurrent programming that is based on pure functional programming. It combined with Scala help us to develop applications that are purely functional, asynchronous, type-safe, resilient, and testable. At the core of ZIO is ZIO data type which is defined as: ZIO is lazy! The difference between ZIO and procedural programming is quite straightforward. In the Continue Reading

ZIO Fibers: An Introduction

Reading Time: 3 minutes Overview In this blog we will look at what are zio fibers and we will try to build a introductory understanding of the same. Now then, when we talk about functional programming libraries such as zio have a main objective of to deal with expressions that might produce a value along with an effect! ZIO Data Structure Let us consider following code block that is Continue Reading

Currying in Scala for complete Beginners

Reading Time: 2 minutes What is Currying? Currying simply means converting a function taking more than one parameter can be into a series of functions with each taking one parameter. Example: As we can see, a function that takes 3 parameters is converted into a series of function calls taking one parameter each. The type of add is (Int, Int, Int) => Int [<function3>] The type of curriedAdd is Continue Reading

All you need to know about SOLID Principles

Reading Time: 3 minutes In this blog post, we will discuss about SOLID principles in Scala which are the 5 most recommended design principles. What are SOLID Principles ? The abbreviation SOLID stands for a collection of principles that, when combined, make code more adaptable to change. SOLID principles assist us in making our software more readable, understandable, flexible. They serve as the foundation for developing object-oriented applications that Continue Reading

Know About Partial Functions in Scala under 3 Minutes

Reading Time: 3 minutes Functions and methods are essential components of programming. They help us to process input and provide us with output. In this blog, we will learn about partial functions through examples in Scala. Note: Do not confuse it with partially defined functions. What are partial functions? In English, “partial” means something which is not complete. Similarly, a partial function is a function applicable only for a Continue Reading

What is Akka | Akka Actors | Parallelism & Multithreading

Reading Time: 2 minutes What is Akka? Akka is a platform for designing scalable, resilient systems that span processor cores and networks. It allows you to focus on meeting business needs instead of writing low-level code to provide reliable behavior, fault tolerance, and high performance. Features provided by Akka Multi-threaded behavior – without the use of low-level concurrency constructs like atomics or locks. Thus, relieving you from even thinking Continue Reading

How to deal with Option data type in Scala

Reading Time: 3 minutes In this blog post, we will talk about Option data type in Scala. Then we will discuss some of the methods for dealing with options. Options In Scala, an Option is a carrier of a single or no element for a specified type. An Option[T] object can be either Some[T] or None object, which represents a value that is not present. Thus, options mainly come Continue Reading