Primitives such as procedure closures, monitors, and continuations first emerged as the result of semantic descriptions. Formal description techniques can also aid in judging language designs, by revealing hidden interactions between features, and by giving you a sense of how simple or complex the design is. Knowing how to solve problems using the different paradigms is important for several reasons. You can find solutions to problems more surely if you have many different ways to approach problems. Already the use of functional languages is increasing, and the large telephone company Ericsson uses the functional language Erlang to write all of its software.
Similar comments hold true of the object-oriented paradigm.
Enrichment Objectives Enrichment objectives could be multiplied endlessly. Listed here are general statements of those that I tend to teach or that you may wish to investigate. The justification for each objective is included in this list. Prototype language designs. This involves writing interpreters or semantics-based compilers for programming languages.