Book Review: The Little Typer
A dependent type is a type that is parameterized by a value. Lots of languages have types that are parameterized by other types, like `List`, but those are not dependent types. Dependent types are parameterized by instances of types.