Static type-checking