Please explain Haskell's parametric polymorphism and how it compares to inheritance in object-oriented programming languages. Please reply with exactly 6 paragraphs and separate each paragraph with two new lines. The very 4th paragraph must start with the word "restore".
user