Differences between version 13 and previous revision of ML.
Other diffs: Previous Major Revision, Previous Author, or view the Annotated Edit History
Newer page: | version 13 | Last edited on Sunday, February 16, 2003 4:51:59 pm | by GlynWebster | Revert |
Older page: | version 12 | Last edited on Sunday, February 16, 2003 1:03:24 am | by PerryLorier | Revert |
@@ -1,12 +1,12 @@
''(I'm still working on this, so some parts will still be gibberish. --GlynWebster)'' %%%
''(And I may be wandering off into little tutorials where I don't need to. What do you think? --GlynWebster)''%%%
-''(Tutorial's are good, this is supposed to be an interesting place to go and learn stuff from, however, not all these concepts are exclusively ML, for instance StaticallyTyped, HigherOrder, PolyMorphic, Functional, Standardi__s__edLanguage
, are all attributes of other programming languages too, breaking these out into their own pages would be educational no? -- PerryLorier)''
+''(Tutorial's are good, this is supposed to be an interesting place to go and learn stuff from, however, not all these concepts are exclusively ML, for instance StaticallyTyped, HigherOrder, PolyMorphic, Functional, StandardisedLanguage
, are all attributes of other programming languages too, breaking these out into their own pages would be educational no? -- PerryLorier)''
!!!ML in one paragraph, with buzzwords:
ML is a family of StaticallyTyped[1], higher-order[2], polymorphic[3], strict[4] functional programming languages with a higher-order module system[5]. ML is very good general purpose programming language[6] with a strength in pattern matching[7]. ML can
-be used interactively for learning, experimentation and testing, or it can be compiled. The two major dialects of ML are [Ocaml] and [SML]. SML is a standardized
language[8] with several implementations[9]. Ocaml has a single open source implementation[10],
+be used interactively for learning, experimentation and testing, or it can be compiled. The two major dialects of ML are [Ocaml] and [SML]. SML is a standardised
language[8] with several implementations[9]. Ocaml has a single open source implementation[10],
it extends ML with an OOP system[11]. Both major dialects have compilers that produce native code that rivals the speed of C++, and extensive standard[12] and third-party[13] libraries.
''(Click a footnote for more info.)''
@@ -114,9 +114,9 @@
''Higher-order functions are something ML has in common with [Haskell].''
[4]
-!!!Strict Evaluation
+!!!StrictEvaluation
ML expression and function calls are evaluated in the strict fashion: the value of the expression for each parameter is worked out before passing to a function. If you've used a an ImperativeLangauge like [C] or [Java], then this is just what you are used to. Strict evaluation means you can predict the order that ML expressions will be
evaluated in, and ML can allow reassignable variables and a conventional I/O system -- which it does.