Une table est un sac qui peut contenir des objets de n'importe quel type. Les objets contenus dans la table sont repérés par des indices. Ces indices sont eux-mêmes des objets de n'importe quel type.
Pour créer un objet de type TABLE on utilise l'opérateur TABLE. Les objets servant d'indices d'une table sont séparés du nom de la table par un point (".").
L'objet TABLE est souvent utilisé pour regrouper des objets. Ces regroupements permettent de définir une nouvelle structure d'informations, par exemple on peut regrouper toutes les données nécessaires à une procédure dans une table dont les indices sont des mots qui donnent un sens aux objets qui sont dans la table.
Exemple :
* exemple d'utilisation TA = TABLE; I = 2 ; A = 'titi' ; Z = 2.25; TB = TABLE; TA . I = 28 ; TA. DEUXUNQUART = Z; TA . x = TB; TA.25 = 8; * comme x n'est pas défini il est pris comme un mot contenant " X " TA.A = I + 4 ; * TA.A doit donc etre égal à 6; Y = I + TA.I; * ici Y vaut 30 TB.3 = 36; TB . 2.25 = 4; TB . 2 = TA; R = TB.2 . 2 + 5 ; * nous avons R = 33 (TB.2 vaut TA et TA.2 vaut 28, c'est la valeur * de l'indice qui compte et pas son nom) S = TB.2.25 ; T = TB . 2 . 25 ; * S = 4 , T = 8 attention aux points décimaux U = TA.titi ; V = TA . 'titi' ; W = TA . deuxunquart ; * l'instruction U =... provoque une erreur, V = 6 et W = 2.25 * (attention au changement minuscule-majuscule) TA . ( TB . 2 ) = TA; * attention TA se contient lui meme sous un indice qui est lui meme! * cela permet l'écriture stupide suivante AE = TA.TA.TA.TA.TA.TA.TA.2; * ce qui donne AE = 28
Un objet table créé dans une procédure doit être donné en tant que résultat,
si on veut l'utiliser à l'extérieur.