Abstract types and the dot notation (1990)

by Luca Cardelli, Leroy Xavier