If you’re going to make OpenUSD language this complicated, maybe just write a subset of Java, C# or C++?  You can make the language domain-specific easily.<div dir="auto"><br></div><div dir="auto">glTF and X3D win through a simple user language and a complex schema language.   The JSON grammar fits on a couple of pages.</div><div dir="auto"><br></div><div dir="auto">If people actually want a declarative C++, check out CPPON.  I leave off Java because of “code to large” issues, which can be overcome with Java languages (other than Clojure).   I am hoping to advance the C++ binding with nesting, once  the add and set methods return this.  Until then:</div><div dir="auto"><br></div><div dir="auto"><div style="font-size:inherit"><a href="https://github.com/coderextreme/CPPON" style="font-size:inherit">https://github.com/coderextreme/CPPON</a></div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto">What’s the possibility of turning FreeWRL or other into a library or C++ binding?  Doug?</div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto">Note that CPPON currently doesn’t really have X3D types built into the grammar.  That would be how we make it domain-specific.</div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto">I’m not really on the “invent a new language” kick, since there are already plenty of good ones.  Just pick one that already exists.  XML and JSON have schemas.  Spend your time writing schemas and other domain-specific stuff in your grammars.</div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto">If someone has a good reason why 3D requires a whole new language, especially one this complicated, speak up.</div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto">Sure, programmer types love complexity, ugh!</div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto">I guess people need jobs.  Hmm!</div><div style="font-size:inherit" dir="auto"><br></div><div style="font-size:inherit" dir="auto">John </div><br></div>