I tried to find how to instantiate a Relay program and found that individual building blocks aren’t exposed through a C++ interface, and instead are registered with macros like TVM_FUNC_REG_VAR_DEF to presumably be hooked up to python methods. The API for C++ just isn’t available. What if my projects are in C++ and I can’t introduce python for a variety of reasons? TVM isn’t available to my projects then.
You should first expose all APIs on C/C++ level, and then have a python binding, and not make python the primary language for devs to to use TVM. This way you limit your audience, and make TVM less usable.