Very few languages (or programmers!) are able to check that a function doesn’t have side effects. In particular, checking that a function doesn’t diverge generally requires a proof assistant, like in F* and Lean.
Your definition of functional programming is as valid as any, but it’s so strict that even Haskell would be mid-tier in the functional ranking.
Very few languages (or programmers!) are able to check that a function doesn’t have side effects. In particular, checking that a function doesn’t diverge generally requires a proof assistant, like in F* and Lean.
Your definition of functional programming is as valid as any, but it’s so strict that even Haskell would be mid-tier in the functional ranking.