Remember also that even in 'C', there are strong and static typing ... aspects to most compilers lurking under the surface.
And for 4) - don't be afraid to build instrumentation into the code base to support decisions about correct operation.
And for 4) - don't be afraid to build instrumentation into the code base to support decisions about correct operation.