Personal tools

Comparison of functional programming languages

From HaskellWiki

(Difference between revisions)
Jump to: navigation, search
(Added page from old haskell.org/comparison.html page)
(change strict to eager. Eager is a more standard term and constrasts better with lazy)
(7 intermediate revisions not shown.)
Line 1: Line 1:
-
{| border=1 cellspacing=0 cellpadding=5
+
[[Category:Glossary]]
 +
 
 +
{| class="wikitable" style="text-align:center;"
|
|
! Evaluation
! Evaluation
Line 17: Line 19:
| static
| static
| yes
| yes
-
|-
+
|-
 +
! Miranda
 +
| lazy
 +
| lazy lists
 +
| static
 +
| yes
 +
|-
! ML
! ML
-
| strict
+
| eager
| side-effects
| side-effects
| static
| static
Line 25: Line 33:
|-
|-
! Scheme
! Scheme
-
| strict
+
| eager
| side-effects
| side-effects
| dynamic
| dynamic
Line 31: Line 39:
|-
|-
! Erlang
! Erlang
-
| ?strict
+
| eager
-
| ?side-effects
+
| side-effects
-
| ?dynamic w/ compiler annotions for static typing
+
| dynamic w/ compiler annotations for static typing
-
| ?yes (shadows old version of variable)
+
| no
|}
|}

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