Калькулятор алгебраических матричных выражений

Программа получает на вход текст программы, содержащей операции матричной алгебры. Размерность матриц 2х2. При отсутствии ошибок программа выполняет указанные вычисления и выводит результат на экран. Допускаются следующие конструкции:
1. Инициализация вектора-строки: ROWVECTOR(значение1,значение2)
2. Инициализация вектора-столбца: COLVECTOR(значение1,значение2)
3. Инициализация квадратной матрицы MATRIX Имя((значение11,значение12)(значение21,значение22))
4. Получение элемента вектора (индекс равен 1 или 2) Имя_вектора[индекс]
5. Получение элемента матрицы Имя_матрицы[индекс_сроки,индекс_столбца]
6. Присваивание нового значения матрице или вектору Имя=матричное_выражение. Матричное_выражение содержит имена векторов или матриц и операции над ними:
Имя^ транспонирование
Имя@ получение обратной матрицы
Имя+Имя сумма матриц или векторов
Имя-Имя разность матриц или векторов
Имя*Имя произведение матриц, векторов
7. Вывод на экран результата OUT(Имя)