There is no such thing as functional language. There are only languages with defferent language features.
Language | Overall rating | 1.C | 2.FAA | 3.FAR | 4.IBD | 5.ID | 6.LC |
---|---|---|---|---|---|---|---|
Haskell | 6 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Rust | 5 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
Python | 5 | ✔️ | ✔️ | ✔️ | ❌ | ✔️ | ✔️ |
OCaml | 5 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ❌ |
C++ | 4 | ✔️ | ✔️ | ✔️ | ❌ | ✔️ | ❌ |
C | 2 | ❌ | ✔️ | ✔️ | ❌ | ❌ | ❌ |
- C: Closures
- FAA: FunctionAsArgument
- FAR: FunctionAsReturn
- IBD: ImmutableByDefault
- ID: ImmutableData
- LC: ListComprehension