I'm trying to wrap my head around OO'Haskell's notion of objects as fixpoints.

Is OO'Haskell's use of mfix simply a use of something like a monadic
Y-combinator to give the object access to its own "identity"?

I don't remember the details exactly, but isn't it to support open recursion for inherited/overridden methods?

http://etymon.blogspot.com/2006/04/open-recursion-definition.html

Regards,
Sean