OOP Common type systems