Several data types use indexing. I will talk about indexing on strings here.

First thing to know is that a "string" is an array of ancii characters. It can
therefore be index like an array using intergers.

===============================================
There are four modes of indexing as follows;

[#] This is for pointing at one spot on the string,array or mapping.
It starts at the first character and counts that # of spaces.
Be warned tho, This type returned the ancii value if you use
it on a string.

[<#] This type is the same as [#] except that it counts along the string
in reverse order. Again it will only show the ansii value if indexing
a string.

[# .. #] This indexes a range of characters on a string. It will return
them in charcter and not ancii form. I have provided samples
of this form below.

[<# .. <#] This form indexes a range of charcters on a string but does
so in reverse order.

[# .. <#] This form indexes the # foward order and <# in reverse.
It's a cool trick when you want to return the whole string
but the size of the string can vary. All you need to do is
index the string with [0 .. <1]

SPECIAL NOTE --- Indexing for data types start at 0 foward order and <1 in reverse order.

===============SAMPLES========================
string scrappy_doo() {

string targ="This is the target string";

return targ; }

This would return the message -- This is the target string -- to whatever
called the function scrappy_doo();

====Now if you INDEX the string you can return a portion of it instead====

string scrappy_doo() {

string targ="This is the target string";

return targ[0..6] ; }

This would return the first to seventh character in the string === This is

==== reverse indexing ====

string scrappy_doo() {

string targ="This is the target string";

return targ[<9..<1] ; }

Using the < in the indexing brackets tells the system to look on the string
in reverse order. The function now would return the nineth to last to the
last character on the string === et string 
