code: def functions_factory(cls, coef, domain, kind, **kwargs):
          
          basis_polynomial = cls._basis_polynomial_factory(kind)
          return basis_polynomial(coef, domain)
docs: Given some coefficients, return a certain kind of orthogonal polynomial
          defined over a specific domain.