
3.5.2 Special characters
The following characters and operators have special meanings:
=

assignment
{ , }

parentheses for block programming
( , )

in expressions, for indexed names and for argument lists
[ , ]

access operator for strings, integer vectors, ideals, matrices,
polynomials, resolutions, and lists. Used to build vectors of
polynomials. Example:
s[3] , m[1,3] , i[1..3] ,
[f,g+x,0,0,1] .
+

addition operator
++

increment operator


subtraction operator


decrement operator
*

multiplication operator
/

division operator. See Miscellaneous oddities, for the difference
between the division operators
/ and div .
%

modulo operator (
mod is an alias to % ): result is always nonnegative
^ or **

exponentiation operator
==

comparison operator equal
!= or <>

comparison operator not equal
>=

comparison operator larger than or equal to
>

comparison operator larger
<=

comparison operator smaller than or equal to
<

comparison operator smaller. Also used for file input. See filecmd.
!

boolean operator not
&&

boolean operator and


boolean operator or
"

delimiter for string constants
`

delimiter for name substitution
?

synonym for
help
//

comment delimiter. Comment extends to the end of the line.
/*

comment delimiter. Starts a comment which ends with
*/ .
*/

comment delimiter. Ends a comment which starts with
/* .
;

statement separator
,
 separator for expression lists and function arguments
\

escape character for
" and \ within strings
..

interval specifier returning intvec.
E.g.,
1..3 which is equivalent to the intvec 1, 2, 3 .
:

repeated entry.
E.g.,
3:5 generates an intvec of length 5 with constant entries 3, i.e., (3, 3, 3, 3, 3).
::

accessor for package members.
E.g.,
MyPackage::i accesses variable i in package MyPackage .
_

value of expression displayed last
~

breakpoint in procedures
#

list of parameters in procedures without explicit parameter list
$

terminates SINGULAR
