def unfold(cls, *args): result = unfold.dispatch(cls, *args) if result is None: result = normalize.dispatch(cls, *args) if result is None: result = lazy(cls, *args) return result
def unify_interpreter(cls, *args): result = unify_interpreter.dispatch(cls, *args) if result is None: result = lazy(cls, *args) return result
def distribute(cls, *args): result = distribute.dispatch(cls, *args) if result is None: result = lazy(cls, *args) return result
def associate(cls, *args): result = associate.dispatch(cls, *args) if result is None: result = lazy(cls, *args) return result
def desugar(cls, *args): result = desugar.dispatch(cls, *args) if result is None: result = lazy(cls, *args) return result
def optimize(cls, *args): result = optimize.dispatch(cls, *args) if result is None: result = lazy(cls, *args) return result