Cтраница 4
Несмотря на столь большую тщательность выполняемых в процессе трансляции проверок транслятор с любого языка программирования должен обеспечивать приемлемую скорость трансляции. Это требование приобретает особенно большое значение при разработке больших программных комплексов, таких, например, как операционные системы или трансляторы с различных языков программирования. Приемлемой является скорость трансляции порядка одной страницы исходного текста в секунду при выполнении трансляции на ЭВМ среднего класса. При обеспечении возможности проведения раздельной трансляции транслятор с некоторого языка программирования должен обеспечивать проведение всех тех проверок, которые были бы проведены в случае совместной трансляции, в том числе и проверок на соответствие типов. В противном случае возможность раздельной трансляции можно отнести к разряду тех благих намерений, которыми вымощена дорога в ад. [46]
По усмотрению программиста оно может быть разделено на шаги. Шаги одного задания выполняются последовательно и выполнение каждого следующего шага может зависеть от успешного выполнения одного или нескольких предшествующих шагов. Например, задание на работу, включающую трансляцию, редактирование и выполнение программы, состоит из трех шагов: выполнение требуемой трансляции, выполнение программы РЕДАКТОР, выполнение самой программы. Простейшее задание состоит из одного шага. [47]
Однако гораздо чаще модель требует специального программного обеспечения. Если модель относится к числу лишь умеренно сложных, применяется нечасто и программируется специалистами, не имеющими большого опыта работы с имитационными моделями, то, по-видимому, наиболее легкий способ решения задачи - использовать такие языки, как Фортран, PL / I или Алгол. Эти языки хорошо известны всем программистам, занимающимся программированием, связанным с решением научных проблем; при этом программисту для выполнения трансляции на машинный язык требуется знать лишь подробное описание исследуемой модели. [48]