Existential typing