Scheme (functional part) | OCaml (functional part) | C, Java, Python Scheme (imperative part) OCaml (imperative part) |

untyped lambda calculus combinatorial logic |
||

--------------------------------------------------- Turing complete --------------------------------------------------- | ||

more advanced type systems, such as polymorphic types | ||

simply-typed lambda calculus (what linguists mostly use) |

Scheme (functional part) | OCaml (functional part) | C, Java, Python Scheme (imperative part) OCaml (imperative part) |

untyped lambda calculus combinatorial logic |
||

--------------------------------------------------- Turing complete --------------------------------------------------- | ||

more advanced type systems, such as polymorphic types | ||

simply-typed lambda calculus (what linguists mostly use) |