Functional Programming
-
Software Development

Clojure’s Persistent Data Structures: Immutability Without the Performance Hit
How structural sharing makes immutable collections fast enough to be the default choice in functional programming In most programming languages,…
Read More » -
Core Java

Monads Unmasked: The Category Theory You’re Already Using Without Knowing
Mention “monads” to most developers and watch their eyes glaze over. The term carries baggage: intimidating mathematical jargon, abstract category…
Read More » -
Software Development

Functional Programming as Stoic Philosophy: Immutability and Accepting What You Cannot Change
Marcus Aurelius, Roman Emperor and Stoic philosopher, wrote in his Meditations: “You have power over your mind—not outside events. Realize…
Read More » -
Software Development

Paradigm Shifts in Programming Languages: Object-Oriented, Functional, and Beyond
1. Introduction: The Architecture of Thought A programming paradigm represents more than syntax or semantics—it embodies a fundamental approach to…
Read More » -
Core Java

Vavr: Bringing Functional Programming to Java
In recent years, Java has evolved to incorporate more modern programming paradigms, with functional programming (FP) becoming a central focus.…
Read More » -
Core Java

Using Java 8 Optionals: Perform Action Only If All Are Present
Java’s Optional class provides a container object which may or may not contain a non-null value. This is useful for…
Read More » -
Software Development

Object-Oriented vs. Functional Programming: A Comparison
Object-Oriented Programming (OOP) and Functional Programming (FP) are two prominent paradigms in software development. Both approaches offer distinct methodologies for…
Read More » -
Software Development

On Tail Call Optimisation
If you are interested in functional programming as many of our craftspeople are, you will have heard talk about tail…
Read More » -
Core Java

Functional vs Imperative Programming. Fibonacci, Prime and Factorial in Java 8
There are multiple programming styles/paradigms, but two well-known ones are Imperative and Functional. Imperative programming is the most dominant paradigm…
Read More »

