Применение - примитивная функция - Большая Энциклопедия Нефти и Газа, статья, страница 1
Дипломатия - это искусство говорить "хоро-о-ошая собачка", пока не найдешь камень поувесистей. Законы Мерфи (еще...)

Применение - примитивная функция

Cтраница 1


Применения примитивных функций включают ( рекурсивную) редукцию строгих аргументов примитива и проведение затем примитивной операции в соответствии с б-правилами.  [1]

Рассмотрим применение примитивной функции 1 ( succ2), где succ, как и прежде, является функцией следования на множестве целых чисел.  [2]

Макросы, соответствующие применению примитивных функций, используют подходящее дельта-правило этого примитива, а полный набор макросов для операций со стеком и дампом, работы с графами и для вызова функций и возврата описан в трех следующих разделах. Однако, хотя смысл и сущность этих операций станут ясны по мере их рассмотрения, эта часть текста может быть пропущена при первом прочтении и использоваться лишь для ссылок при необходимости. Сначала, однако, следует ввести несколько общих обозначений.  [3]

Условные выражения могут рассматриваться как применения примитивной функции cond в связи с ленивой семантикой функционирования G-машины в МОП-системе, с другой стороны, условные выражения рассматриваются как особый случай ( по этому вопросу см. также гл.  [4]

Правила преобразования графа, соответствующего применению примитивной функции, задаются б-правилами для этой функции.  [5]

Это необходимо для повышения эффективности при применении примитивных функций, требующих строгой семантики и выполняющих основные арифметические, логические и условные операции. Их аргументы находятся на вершине дампа, что помогает сократить вычислительные затраты, связанные с конструированием графов. Заметьте, что дамп хранит атомарные данные и, как мы увидим ниже, информацию о состоянии программы в момент вызова функции, а стек содержит лишь указатели на составные части графа выражения, редуцируемого в данный момент. Подвыражения, представленные этими указателями, также могут быть ( косвенно доступными) атомами, но чаще бывают списками или частично вычисленными применениями функции.  [6]

7 Спуск по гребню графа выражения 12. а - начальное состояние. б - одни шаг вниз по гребню. в - конец спуска. [7]

Для инициации вычисления г - го аргумента применения примитивной функции мы просто выполняем подъемом через / вершин вверх по гребню ( считая от первой не - вершины) и затем входим в гребень аргумента по правой дуге соответствующей - вершины.  [8]

9 Стек после рекурсивного вызова редуктора графов. [9]

При этом возможны обратный просмотр гребня для нахождения подграфов аргументов и подъем при завершении применения примитивной функции.  [10]

Различные графовые преобразования могут заключаться либо в подстановке аргумента вместо параметра, как при р-редукции, либо в применении примитивной функции согласно встроенным правилам, как при б-редукции.  [11]

Исключая случаи небулева предиката и применения выражения, которое не является функцией, ошибка типа обнаружилась бы в денотационной семантике только при применении примитивной функции к объекту неподходящего типа; при этом допустимые типы аргументов задаются спецификациями примитивных функций.  [12]

Задав б-правила, которые нельзя детально специфицировать в общем случае, мы можем теперь довольно просто определить преобразование графа, соответствующее редукции редекса применения примитивной функции.  [13]

Примитивные операции, используемые абстрактной машиной, могут быть разделены на 4 класса: операции со стеком и дампом, создание и изменение вершин графа ( и, таким образом, графов), вызов функций и возврат из них, а также вычисление применений примитивных функций. Каждая такая операция представлена макросом в коде G-машины, генерированном компилятором; эти макросы образуют набор команд абстрактной машины, который может быть реализован на любом компьютере, обладающем соответствующими языковыми средствами. Например, макроинструкции PUSH и SLIDE требуют применения команд с индексированием. Таким образом, промежуточный язык, основанный на макросах, является мобильным и может быть реализован на выбранном компьютере с помощью обычных языков программирования или машинного языка.  [14]

15 Примитивы Лиспа. [15]



Страницы:      1    2