The spec doesn't actually say what the syntax for each op code is meant to be in the surface level Datalog language. For most it's fairly straightforward to infer from the syntax (i.e. that infix + is the syntax for the add operator), but for those with method syntax its actually impossible to determine without examining an implementation - e.g. the "try" op is syntactically a method called try_or and the "prefix" op is a method called starts_with, but the spec doesn't say this.
Probably the list of ops should be expanded to a table which lists the protobuf name of the opcode, the surface syntax, and its semantics over each type it supports.
The spec doesn't actually say what the syntax for each op code is meant to be in the surface level Datalog language. For most it's fairly straightforward to infer from the syntax (i.e. that infix
+is the syntax for the add operator), but for those with method syntax its actually impossible to determine without examining an implementation - e.g. the "try" op is syntactically a method calledtry_orand the "prefix" op is a method calledstarts_with, but the spec doesn't say this.Probably the list of ops should be expanded to a table which lists the protobuf name of the opcode, the surface syntax, and its semantics over each type it supports.