<-- home

Path to FP - What is FP?

Define functional programming.

FP (Functional Programming) is programming with valid (pure) functions and nothing more. FP is based on composition, not only about composing functions, composing types, and algebraic data structures; it also makes concurrency composable.

List the most popular characteristics of functional programming languages.

  • Immutability
  • Static types
  • Lazy evaluation
  • Support of high order and composition of functions
  • Functions as first class citizens
  • Expression-based syntax
  • Referentially transparent
  • Curry/Currying
  • Anonymous functions
  • Recursion
  • No side effects
  • Closures