Home · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z · Numbers & Symbols

The Compleat User RPL Encyclopedia


'  '  (delimiters)

, also known as “ticks”, are the delimiters for names (e.g. ) and for algebraic objects (e.g. ).

There are four kinds of ticks in User RPL, all of which are displayed as .

  1. The first kind of tick, which is called  in System RPL, “quotes” a name object, which means that the name gets placed as-is on the stack instead of being evaluated. This kind of tick has nothing to do with algebraic objects. Its internal code in System RPL is 

    Example: The first tick in 

  2. The second kind of tick, which is called  in System RPL, only delimits the end of a quoted name object (see previous paragraph). This kind of tick has nothing to do with algebraic objects. Its internal code is 

    Example: The second tick in 

  3. The third kind of tick, called  in System RPL, delimits the beginning of an algebraic object, whether an ordinary one or a local name defining procedure. An algebraic object and a program object are identical internally, except for the 5-nibble object header (02AB8 for an algebraic, and 02D9D for a program). They both end with “”. There is no ending delimiter that’s specific to algebraic objects.

    Example: The first tick in 

  4. The fourth kind of tick delimits the end of an algebraic object, but only in User RPL, not internally. Internally, its place is held by the generic “” end-of-composite-object marker. If the algebraic is a local variable defining procedure, then its local variables are abandoned at this point, as if it were an .

    Example: The second tick in 

The tiny program  is shown below in both User RPL and its equivalent in System RPL to illustrate the difference between the different kinds of ticks. Equivalent objects are aligned vertically and colored the same. Note that the program only contains two objects: the quoted name , and the algebraic object .

  User RPL:  
System RPL: