What are the key differences between functional programming and object-oriented

What are the key differences between functional programming and object-oriented programming paradigms? Discuss the advantages and disadvantages of each paradigm with examples.