Conversion of Values
SenseTalk is a typeless language. That is, all values can be treated as text, and you never need to declare that a given variable will hold a particular type of value, such as numbers or dates or text, or lists of values. Internally, however, SenseTalk can hold values in different forms, converting from one representation to another as needed.
Understanding how and when these conversions occur, and the global properties that control the formatting, will let you take control of this process when necessary.
Automatic Conversion
SenseTalk converts values automatically to an appropriate internal representation as needed. When performing an arithmetic operation such as addition, for instance, the two values being added will be evaluated as numbers. The resulting value will be kept internally in numeric form until it is needed as text.
In most situations, SenseTalk's automatic value conversion will do what you want and provide the desired result. Occasionally, though, there can be surprises, so it's helpful to understand when these conversions take place and how you can control them. Consider the following example:
put ((1 + 2) & 4) + 5