Comparison of functional programming languages
| Evaluation | IO | Typing | Pure | |
|---|---|---|---|---|
| Haskell | lazy | monads | static | yes |
| Clean | lazy | uniqueness | static | yes |
| ML | strict | side-effects | static | no |
| Scheme | strict | side-effects | dynamic | no |
| Erlang | strict | side-effects | dynamic w/ compiler annotations for static typing | no |
