   SM supports a number of string operations on vectors and scalars.
In the following descriptions expr is a expression and vector the
name of a vector.

     Unary:

ATOF(expr)	Convert a string to a floating point value
CTYPE(STRING)   Return all current names of colours; see also CTYPE()
HELP(name)      Return the HELP string for vector name
LENGTH(expr)	The length (SCREEN units) that a string would have if plotted
STRLEN(expr)	The number of characters in a string
STRING(expr)	Convert a number to a string. You might prefer to use
		sprintf('%t',expr) instead, as it gives you more control
STRING<WORD>	Convert a string to a string, quoting ''
( expr )	Raise precedence

     Binary:

expr + expr	Add; concatenate element by element
expr CONCAT expr Concatenate the two vectors
INDEX(expr_1,expr_2)
		Return the starting index of expr_2 in expr_1, or -1.
SPRINTF(expr_1,expr_2)
		Format expr_2 using the standard C format string expr_1. The
		additional format %t or %T is identical to %e, but formats the
		string as a power of 10 in TeX format.  Note that only one expr
		may be formatted, but that you can say `sprintf(expr,expr) +
		sprint(expr,expr) ...' to work around this restriction.
vector[expr]	The elements of vector given by expr.

     Ternary:

SUBSTR(expr_1,expr_2,expr_3)
		Return the expr_3-long substring of expr_1 starting at expr_2.
                If expr_2 is negative, it's taken relative to the end of the
                string; if expr_3 is 0 return the rest of the string.
expr1 ? expr2 : expr3
		expr2 if expr1 is true, else expr3

   Note that all indices into strings have 0 for the first character.

   The expression `VECTOR[expr]' results in a vector of the same
dimension as the `expr', with elements taken from `VECTOR' (i.e.
`VECTOR[INT(expr_i)]').

   You can also use `WORD([ expr [ , ... ]])' as part of an
expression, where `WORD' is a macro taking zero or more arguments. 
The arguments are restricted to be either the names of vectors or
numbers; sorry.

   The precedences are what you'd expect, with `+' being higher than
`CONCAT'. The logical operators have even lower precedence than `CONCAT'.
