|LSL Portal||Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials|
List Message Protocol
(Proposed) (Draft, not implemented) (Open for comments)
When we solve problems like interpreting an LSL expression a la Chatbot, ...
We then work with results of any non-list type, also results of list type, also parameter lists that include lists as entries, also the results of verbs that return no results, also the result that is failing to make sense of an unintelligible unknown verb.
I guess we want to invent some way of escaping such things: (a) some perfectly reversible way to encode such things as a list we can pass around a script, and (b) some perfectly reversible way of encoding a list as a string.
 = unknown verb [ "<>" ] = the result of a verb that returns no result [ 0... ] = float or integer result [ "\"...\"" ] = key or string result, may be empty = encoded simply as "\"" + ([[lEscapeURL]](string) + "\"" [ "<...>" ] = rot or vector [ "[", ..., "]" ] = list, may be empty [ "(", ..., ")" ] = partially evaluated Polish expression = list of verb with zero or more args, may be nested in the sense of args may be lists