# Type Inference by Example
A series of down-to-earth, code-oriented articles on implementing type inference.
*This series is also available on [Medium](https://medium.com/@joakim.ahnfelt/type-inference-by-example-793d83f98382).*
# Chapters
## Type constraints? Substitutions? What?
* [Part 1](part1/article.md)
* [Part 2](part2/article.md)
* [Part 3](part3/article.md)
> This chapter is an introduction, so there's no code.
## Inferring generic types
* [Part 4](part4/article.md)
* [Part 5](part5/article.md)
* [Part 6](part6/article.md)
* [Part 7](part7/article.md)
* [Slides](talk-mfk/slides.pdf)
> Final code for this chapter [here](talk-mfk/Inference.scala).
## Upcoming
* Type classes
* Functional dependencies
* Field constraints
* Higher ranked types
* Named arguments
* Optional arguments
* Varargs
# Contact
I'm Joakim Ahnfelt-Rønne, MSc Computer Science (University of Copenhagen). I work with functional programming in the industry and I co-organize a [meetup](https://www.meetup.com/MoedegruppeFunktionelleKoebenhavnere) about it in Copenhagen. In my spare time, I work on [programming languages](https://github.com/topshell-language/topshell) - and apparently, write about it.
Catch me on https://discord.gg/4Kjt3ZE - it's a very nice community about programming language design. I'm @ahnfelt.