code: def make_predicate_object_combinator(function, p, o):
      
      def predicate_object_combinator(subject):
          return function(subject, p, o)
      return predicate_object_combinator
docs: Combinator to hold predicate object pairs until a subject is supplied and then
          call a function that accepts a subject, predicate, and object.
  
          Create a combinator to defer production of a triple until the missing pieces are supplied.
          Note that the naming here tells you what is stored IN the combinator. The argument to the
          combinator is the piece that is missing.