To evaluate a tabulation (i.e., an expression of the form t[exp]), we lookup the table in the current environment. If it is there, of course we check whether it is indeed a table (if(exp[TAG_idx] = TAB_tag,...). If so, the indexing expression is recursively evaluated and it is checked whether the resulting value is a number (if(val[TAG_idx] = NBR_tag,...). If so, it is checked to see if the index is positive and smaller than the size of the table being referred. If all this is OK, the 'real' indexing (in the underlying Pico table) is done.