Difference between revisions of "Comparison of functional programming languages"
Jump to navigation
Jump to search
JaredUpdike (talk | contribs) (Added page from old haskell.org/comparison.html page) |
Jbolden1517 (talk | contribs) (change strict to eager. Eager is a more standard term and constrasts better with lazy) |
||
(7 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
+ | [[Category:Glossary]] |
||
− | {| border=1 cellspacing=0 cellpadding=5 |
||
+ | |||
+ | {| class="wikitable" style="text-align:center;" |
||
| |
| |
||
! Evaluation |
! Evaluation |
||
Line 17: | Line 19: | ||
| static |
| static |
||
| yes |
| yes |
||
+ | |- |
||
− | |- |
||
+ | ! Miranda |
||
+ | | lazy |
||
+ | | lazy lists |
||
+ | | static |
||
+ | | yes |
||
+ | |- |
||
! ML |
! ML |
||
− | | |
+ | | eager |
| side-effects |
| side-effects |
||
| static |
| static |
||
Line 25: | Line 33: | ||
|- |
|- |
||
! Scheme |
! Scheme |
||
− | | |
+ | | eager |
| side-effects |
| side-effects |
||
| dynamic |
| dynamic |
||
Line 31: | Line 39: | ||
|- |
|- |
||
! Erlang |
! Erlang |
||
− | | |
+ | | eager |
− | | |
+ | | side-effects |
− | | |
+ | | dynamic w/ compiler annotations for static typing |
+ | | no |
||
− | | ?yes (shadows old version of variable) |
||
|} |
|} |
Revision as of 00:52, 6 April 2009
Evaluation | IO | Typing | Pure | |
---|---|---|---|---|
Haskell | lazy | monads | static | yes |
Clean | lazy | uniqueness | static | yes |
Miranda | lazy | lazy lists | static | yes |
ML | eager | side-effects | static | no |
Scheme | eager | side-effects | dynamic | no |
Erlang | eager | side-effects | dynamic w/ compiler annotations for static typing | no |