Definition
Language structures implementing the functional programming paradigm

Features

Immutability (Haskell, Scala, Elixir, Clojure, Rust) Once created, values cannot be changed, reducing side effects.

Pure Functions (Haskell, Elm, F#) Functions without side effects that always produce the same output for given input.

Lazy Evaluation (Haskell, Scala, Python (via generators)) Delays computation until the result is needed.

Pattern Matching (Haskell, Rust, Scala, F#, OCaml) Decomposes data structures using matching rules.

Option/Maybe Types (Haskell, Scala, Rust, F#) Wrapper for values that may be present or not.

Monads (Haskell, Scala, F#) Abstractions that structure computations with side effects.

Function Composition (Haskell, Scala, F#) Combining functions to build complex behavior.

Pipelines (Elixir, F#, OCaml, JavaScript with RxJS) Chain function calls for readability.