Static typing forces you to you deal with a large fraction of trivial bugs before you can run.
This phrasing makes it sound like a bad thing. I would say: Static analysis helps you to find and correct a large fraction of trivial bugs without even running the program.
(Static typing is a subset of static analysis.)
edited.
Because I have been learning about Type Theory, I have become much more aware of and interested in Functional Programming.
If you are unfamiliar with functional programming, Real World Haskell describes functional programming like this:
Because of this functional languages have a number of interesting differences with traditional programming. In functional programming: