What are functional and situational languages?

Functional languages are programming languages that treat computation as the evaluation of mathematical functions and avoid changing-state and mutable data. Examples of functional languages include Haskell, Scheme, and Clojure.

Situational languages are programming languages that are designed for specific applications or situations. For example, SQL is a situational language used for querying and managing databases, while HTML is a situational language used for creating web pages.