That being said, C API does not expose
MyOp::build
equivalents for individual ops. The idea so far is for each language to generate the code similar to what we do in C++ given the ODS definition.
Just to be sure I understand this - this comment means: each higher language package API which wraps the C API would take over the pipeline (ODS -> C++ templates)
(by this, I mean - not directly to C++ templates, but to the same effect) ?
I think I understand your above comment better now - end user’s of the package should not be exposed to OperationState
- I agree.
There’s also PDL that lets you express patterns as IR, which you can parse and execute using mostly the parts of the API that are available in the C API.
Is there an area where I can read about PDL
? E.g. I found this thread: PDL: Dialects for Representing and Transforming Pattern Rewrites but was curious if there is documentation.