Functional programming with Clojure in the wild
Abstract
Once considered a niche, Functional Programming (FP) has been gaining increased popularity due to the evolving needs of software systems, such as scalability and concurrency. Today, many mainstream languages like JavaScript, Python, and Java have incorporated (and actively advertise) functional features such as first-class functions, higher-order functions, and immutability. This shift reflects the growing recognition of FP’s ability to improve code clarity, reduce side effects, and enhance parallelism related qualities that are crucial for building modern, resilient systems.
In this talk, we will be exploring the use of Functional Programming in the industry, specifically with Clojure. We will begin by examining how functional programming paradigms are applied in modern software engineering, highlighting some of Clojure’s deliberate design choices and how they might differ from Scheme/Racket. Next, we will compare the different approaches in object-oriented programming (OOP) and FP. Finally, we will explore how the different parts of the “Software Abstraction Using Functional Programming” course, can be used in the industry.
Speaker’s profile
Zachary is a Software Engineer in DBS Bank. He is in the DATA department which is responsible of an in-house platform called ADA, which enables the rest of the bank to do AI, Machine Learning or Analytics related work. He has worked on a variety of projects from Metadata to Observability and most recently in the sphere of GenAI. While in DBS, he has had the great pleasure to work with Clojure, his functional programming language of choice. Previously, in his free time, he was the organiser of Clojure-Asia a monthly Clojure online meetup group. He is an ISTD alumni of SUTD.
