input: Write a function to determine if a string contains matching parentheses by iterating through the string and using a stack to track open parentheses. If at the end of the iteration, the stack is empty, return True, otherwise return False.
  def matching_paren(s):
      stack = []
      for char in s:
          if char == '(':
              stack.append(char)
          elif char == ')':
              if len(stack) == 0:
                  return False 
              stack.pop()
      
      if len(stack) == 0:
          return True
      else:
          return False
  
  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 len(stack) == 0:
                  return False 
              stack.pop()
      
      if len(stack) == 0:
          return True
      else:
          return False