Object-oriented Functional Programming and Type Reconstruction | AMiner