++, +=, -=, etc. do not operate on indexed variables, e.g. ++x(1); x(2:3) += 4; are not allowed. They should be. Also, y = x(2:3) = [ 1 2]; produces y = x, not y=[1 2]. Indexing should also be allowed on expressions and strings. CTRL/C interrupt should set a flag. The flag should be tested at safe points to abort. But how about within a large mat multiply? Maybe a flag should be set, to disable ctrl/c, by routines doing critical linked-list pointer manipulation. Add functions: for reading a vector from a file, x = read("file.dat") ??? Finish: history editing Note in M.DOC those functions available only when YYDEBUG and/or DEBUG compile flags used. *** 5/12/94 BUG--- when the parser fails in compiling a function, the function is still left in the symbol table. List the function -> core dump