Type-checker