What is Functional Programming? [Dev Concepts #4]

What is "functional programming", "pure function", "functional language", "lambda function" and "higher-order function" and how these concepts work in modern programming?

Functional programming is a programming paradigm where programs are constructed by applying and composing functions. Functional programming is declarative rather than imperative, and the application state flows through pure functions. Functional code tends to be more predictable and easier to test than imperative or object-oriented code — but if you’re unfamiliar with it and the common patterns associated with it, functional code can also seem a lot denser. Learn which of the programming languages are functional. 

Functional Programming (FP) is programming based on composing pure functions while avoiding shared state, mutable data, and side effects.

  • Functional Programming is a declarative programming approach instead of imperative. Instead of building an algorithm on how to do something step by step, functional developers describe the result by functions and composition of functions.
  • Pure Functions – These functions return value only determined by their input without any side effects. Pure Functions are the “heart” of functional programming. Using pure functions means maintaining consistent results.

Lesson Topics

In this video we review the following topics:
  • What is Functional Programming? 
  • Functional Programming Languages
  • Lambda Functions 
  • Higher-Order Functions

Lesson Slides

Leave a Comment

Recent Posts

About SoftUni

SoftUni provides high-quality education, profession and job to people who want to learn coding.

The SoftUni Global “Learn to Code” Community supports learners with free learning resources, mentorship and community help.