vipsi - separators
Author: kio@little-bat.de
Keywords: vipsi shell script interpreter programming

# vipsi - shell and script language

## the built-in words

### separators

#### "," (comma)

Commas separate arguments in argument lists for instructions and procedures or they separates indexes in item selectors of multi-dimensional lists.

e.g.:

        put "a=", a;
        a = max( b,c );
        n = mylist[ i,j ];

#### ";" (semi colon)

";" is an instruction which does nothing. it may be used to separate statements if you like. it is nearly never required by the parser but improves readability of your source.

e.g.:

        var a = 0; log a; a++; log a;

#### "( … )" (round brackets)

    ( value [,…] )

Round brackets override operator priority in expressions or enclose argument list for procedures.

e.g.:

        put sin ( pi/3 );
        put 2*(3+4);

#### "[ … ]" (square brackets)

    text|list[ [num_value] [to] [num_value] [,…] ]

Square brackets enclose subrange or item selector for texts or lists. indexes start with 1.

e.g.:

        put "abcde"[2 to 3];
        put {1,2,3}[1];
    	put my_textlist[47, 3 to ]

#### ""{ … }" (curly brackets)

Curly brackets enclose list literals, procedure bodies, or blocks of instructions with private variable scope.

e.g.:

        var a = { 1, 2, 3 }
        proc hello() { put "hello ",env.USER,"!" }
        { var foo=0 }