Discuss the following:
Q: A palindrome is a word or phrase that reads the same forwards and backwards, character for character, disregarding punctuation, case and spaces. Some examples are "racecar", "Madam, I'm Adam.", and "Was it a cat I saw?". Write a program that allows the user to input a word or phrase and then determines if it is a palindrome. The program should use a Boolean-valued Function procedure named IsPalindrome that returns the value True if the word or phrase is a palindrome and the value False otherwise.