Problem

In a dependently typed language, type checking requires evaluating arbitrary program segments at compile time.

Doesn’t play well with:

That is… general-purpose programs!