term notation:
term : parameter list # term list
parameter : string # string
parameter list is sometimes called the operator,
and the terms of the term list are called subterms.
EG, \["foo","OPID"; "1,"n"\],\[\["bar","OPID"; "a","s"\],\[\]\] |
Shorthand : use {,} to indicate parameter list with and (;) for subterm list
EG: {foo:OPID, 1:n}({bar:OPID, a:s}())
Almost always the first parameter is an OPID so skip that and pull outside of {}
EG: foo{1:n}(bar{a:s}())
If either list is empty leave off {} or ()
EG: foo{1:n}(bar{a:s})
If both lists are empty, ie just and OPID then include () EG, nil() == \["nil":OPID\],\[\] |
the parameter list can be empty, eg {}(foo()) or most degenerate case : \[\],\[\] == () |