Checking properties at compile time instead of link time