The basic idea is always that of isolating a universe of this course and a class of operators which have a fixed point. The main theory is a very successful and comprehensive example of universal discourse which admits interesting fixed-point theorems. However, it has the drawback of needing partially defined objects. And this is probably inescapable if we want to discuss complete functional languages. But more powerful approaches, and unfortunately less general, can be offered using set theory and category theory, especially the theory of algebra co-algebras. In these cases we deal only with total objects. Let me just point out a caveat here: mind the different understanding of the word non-termination. Sometimes it means underdefined as is the case when we work in domain theory, other times we mean non-termination as in a stream of inputs that is still something which is defined but it is infinitely progressing for example an operating system is something which of course if it works must be non-terminating otherwise the machine gets stuck. But still it does provide something so it is an infinitely progressing function.