Static Type Checking
Static type checking is done once,
at compile time.
- The compiler must be able to determine ``all'' types at compile
time: type declarations required.
- Faster at runtime: no type checks, only operations.
- Inflexible. Pascal originally included array bounds as part of
the type, making it impossible to write general subroutines such as matrix