Vala incluye un sistema de tipos genérico, mediante el cual una instancia particular de una clase se puede restringir con un tipo particular o un conjunto de tipos elegidos en la construcción de la clase.