Oz vs Standard ML
When comparing Oz vs Standard ML, the Slant community recommends Standard ML for most people. In the question“What are the best languages for learning functional programming?” Standard ML is ranked 15th while Oz is ranked 24th. The most important reason people chose Standard ML is:
The module system that Standard ML uses gives the programmer the power to define custom data types whose internal implementation is invisible to other programmers using the module.
Ranked in these QuestionsQuestion Ranking
Pros
Pro Concepts, techniques, and models of computer programming
CTM teaches all the major paradigms with mathematical rigor, including functional programming.
Pro Powerful module system
The module system that Standard ML uses gives the programmer the power to define custom data types whose internal implementation is invisible to other programmers using the module.
Pro Implementing laziness is trivial
Since mutability is only confined to a special type of reference cells, implementing laziness in SML can be done in only 20 lines of code.
Pro Enforces distinction between data and computations
Since it uses strict evaluation, it enforces distinction between data and computations which in turn enables you to use induction on algebraic data types as a reasoning principle.
Pro Great exception system
Secret messages can be sent across distant parts of a program without possibility of being intercepted by unintended recipients in the middle.
Cons
Con Not very popular outside academia
SML is mostly used in academia and doesn't have many uses in industry. While it's a good language for learning functional programming concepts, the language itself won't be very useful.