Первые языки моделирования

В языках, ориентированных на действия, элементы моделируемой системы либо бездействуют (не меняют своего состояния), либо со временем выполняют действия (при определенных условиях), которые приводят к немедленному изменению состояния системы. Моделирование производится с помощью циклического прослеживания всех действий шаг за шагом через небольшие интервалы времени и соответствующего изменения состояния системы. Многие задачи могут быть сформулированы более эффективно на языках, ориентированных на события. В языках такого типа время изменяется скачками — от одного события до следующего, каждое событие приводит к дискретному изменению состояния системы. При каждом событии элементы системы просматриваются для того, чтобы определить, вызовут ли они при новых условиях в системе одно или более событий в будущем (например, выдача сообщения вызывает будущее событие — получение сообщения в некотором другом месте). Все будущие события со временем произойдут, а событие, которое произойдет раньше всех, определит следующий шаг во времени. Языки, ориентированные на процессы, направлены на то, чтобы объединить средства компактной записи языков, ориентированных на действия, с эффективностью языков, ориентированных на события. Примером такого языка является SIMULA. Одна подпрограмма на языке SIMULA может соответствовать множеству процессов одного типа, состояния которых различны. Для возобновления выполнения с соответствующей контрольной точки каждый процесс приводит к вызову связанной с ним программы.

Releated Post

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.