# Can lists be defined in a special way so that they contain things of different type?

In https://www.seas.harvard.edu/courses/cs152/2019sp/lectures/lec18-monads.pdf it is written that

A type $$\tau$$ list is the type of lists with elements of type $$\tau$$

Why must a list contain elements of the same type? Why can’t it contain elements of different types?

Is there a way of defining a list polymorphically in the typed lambda calculus, so that it takes elements of any type?

Can we then use the List monad on lists, defined polymorphically?