Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
rl:primitives [2020/04/13 14:29]
reladm
rl:primitives [2020/04/13 15:06] (current)
reladm
Line 12: Line 12:
  
 Parsing is complicated by the existence of symbol root types.  Without any additional context, ''INTEGER'' would be interpreted as ''INTEGER: SYMBOL'', but parsing requires that we instead interpret ''INTEGER'' as ''INTEGER: ^ROOT'' for things to work correctly.  This is true for all the primitive root types: ''INTEGER'', ''FLOAT'', ''BITSTRING'', ''STRING'', and ''BOOLEAN'', and for the special patterns ''ANY'' and ''NONE''. Parsing is complicated by the existence of symbol root types.  Without any additional context, ''INTEGER'' would be interpreted as ''INTEGER: SYMBOL'', but parsing requires that we instead interpret ''INTEGER'' as ''INTEGER: ^ROOT'' for things to work correctly.  This is true for all the primitive root types: ''INTEGER'', ''FLOAT'', ''BITSTRING'', ''STRING'', and ''BOOLEAN'', and for the special patterns ''ANY'' and ''NONE''.
 +
 +===== Defined Root Terms =====
 +
 +The following root terms are known to the parser.
 +
 +| ''ANY'' | ''BITSTRING'' | ''BOOLEAN'' | ''FLOAT'' |
 +| ''INTEGER'' | ''MAP'' | ''NONE'' | ''PRODUCT'' |
 +| ''PROPERTIES'' | ''^ROOT'' | ''SPECIAL_FORM'' ||
  
 ===== The Wildcard and Nothing ===== ===== The Wildcard and Nothing =====