input: Write a function to identify if a string contains matching parentheses. The function should return True if all parentheses in the string are properly matched and nested, otherwise it should return False. If the input string is empty, the function should return True.
  assert matching_paren("()") == True
  assert matching_paren("(())") == True
  assert matching_paren("()()") == True
  assert matching_paren("(()))") == False
  assert matching_paren("(()") == False
  assert matching_paren("") == True
output: def matching_paren(s):
      stack = []
      for char in s:
          if char == '(':
              stack.append(char)
          elif char == ')':
              if not stack or stack.pop() != '(':
                  return False
      return len(stack) == 0