OO Programming Styles in ML

OO Programming Styles in ML, Bernard Berthomieu.

It is shown that the essential OO concepts and idioms, including inheritance and dynamic dispatch, can be encoded in this well understood framework, without requiring any operational or typing extensions of ML...

[The encodings] do not rely on subtyping and subsumption, but on an encoding of inheritance polymorphism into paramteric polymorphism.

This isn't new (it is dated March 2000), but seems interesting.

The ML module language put to good use!

Thanks Henry!