> For the complete documentation index, see [llms.txt](https://harmeetsingh.gitbook.io/scala-type-system/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://harmeetsingh.gitbook.io/scala-type-system/master.md).

# Table Of Content

> ## Phase I: Basics&#x20;

* [**Chapter 1: What are the types?**](/scala-type-system/phase-i/chapter-1-what-are-the-types.md)
* [**Chapter 2: Types Vs Classes and Subtyping Vs Inheritance**](/scala-type-system/phase-i/chapter-2-types-vs-classes-and-subtyping-vs-inheritence.md)
* [**Chapter 3: Type Disciplines**](/scala-type-system/phase-i/chapter-3-type-disciplines.md)
* [**Chapter 4: Type Inference**](/scala-type-system/phase-i/chapter-4-type-inference.md)
* [**Chapter 5: Scala Types Hierarchy**](/scala-type-system/phase-i/chapter-5-scala-types-hierarchy.md)
* [**Chapter 6: Parameterized Types**](/scala-type-system/phase-i/chapter-6-parameterized-types.md)
* [**Chapter 7: Type Erasure**](/scala-type-system/phase-i/chapter-7-type-erasure.md)
* [**Chapter 8: Type Classes and Ad-hoc Polymorphism**](/scala-type-system/phase-i/chapter-8-type-classes-and-add-hoc-polymorphism.md)
* [**Chapter 9: Type Constraints**](/scala-type-system/phase-i/chapter-9-type-constraints.md)
* [**Chapter 10: Variance**](/scala-type-system/phase-i/chapter-10-variance.md)

> ## Phase II: Advance

* [**Chapter 11: What are Kinds in Scala?**](/scala-type-system/phase-ii/what-are-kinds-in-scala.md)
* [**Chapter 12: Higher Kinded Types**](/scala-type-system/phase-ii/chapter-12-higher-kinded-types.md)
* **Chapter 13: Existential Types**
* **Chapter 14: F-Bounded Polymorphsim**
* **Chapter 15: Self Type Annotation.**
* **Chapter 16: Type Abstraction**
* **Chapter 17: Path Dependent Type**
* **Chapter 18: Structural Type**
* **Chapter 19: Partial Unification**
* **Chapter 20: Type Lambda**
