In the following, we will discuss more advanced type systems. Beginners do not have to read all the sections.