* Данный текст распознан в автоматическом режиме, поэтому может содержать ошибки
1034
Программирование в системах компьютерной алгебры
Все СКА и СКМ имеют свой язык программирования. Как правило, по своим воз можностям в решении математических задач языки программирования СКА на много превосходят обычные языки программирования высокого уровня, такие как Fortran, Algol, Pascal и их варианты, даже самых новейших версий.
14.1. Основные средства программирования СКМ
14.1.1. Понятие о входном языке системы и языке реализации
Системы компьютерной математики изначально создавались с целью исключить программирование при решении математических задач. Тем не менее собствен ный язык программирования вовсе не вредит СКМ и СКА, а лишь расширяет их функциональные возможности. Язык программирования высокого уровня – это совокупность средств, позво ляющих управлять компьютером с помощью достаточно простых и понятных пользователю инструкций (команд), а не с помощью машинных кодов. Следует отметить, что у всех СКМ и СКА можно выделить три языка: • входной язык общения системы; • собственный язык программирования системы; • язык (или даже языки) реализации системы. Все описанные в данной книге языки общения и языки программирования яв ляются интерпретирующими и математико ориентированными. Напомним, что интерпретирующие языки программирования просматривают текст программы и немедленно исполняют любые команды (операторы, функции и т. д.) по мере их опознания (интерпретации). Это дает следующие преимущества перед языками компилирующего типа: • отсутствие этапов компиляции программ и линковки; • возможность выполнения программ по шагам в интерактивном режиме; • включение в состав языка программирования всех средств входного языка общения. Существует неверная точка зрения, что интерпретирующие языки програм мирования проигрывают компилирующим в скорости выполнения вычислений, особенно в задачах большой размерности. Это было верно на заре развития этих языков. При этом компилирующие языки решали задачи только численными ме тодами. В наше время ситуация изменилась. Прежде всего надо отметить, что ядро СКМ содержит множество команд и функций, которые не только тщательно оп тимизированы, используют новейшие алгоритмы вычислений, но и представлены в откомпилированном виде. Таким образом, в них все критические вычисления (например, матричные, быстрые преобразования Фурье и т. д.) выполняются