template<typename Out, typename Algebra> | |
Out cata(Algebra f, expression const& ast) | |
{ | |
return f( | |
fmap( | |
[f](expression const& e) -> Out { return cata<Out>(f, e); }, | |
ast.get())); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment