text: # pseudo-code for object construction
  def make(the_class, some_arg):
      new_object = the_class.__new__(some_arg)
      if isinstance(new_object, the_class):
          the_class.__init__(new_object, some_arg)
      return new_object
  
  # the following statements are roughly equivalent
  x = Foo('bar')
  x = make(Foo, 'bar')
  