----------------------------------------------- -- Пример программы на Акторном Прологе. -- -- (c) 2003, Алексей А. Морозов, ИРЭ РАН. -- -- Построение теоретико-модельной семантики. -- ----------------------------------------------- -- Шаг 1. Из текста программы удаляются -- -- все нелогические встроенные предикаты. -- ----------------------------------------------- project: (('Example')) ----------------------------------------------- class 'Example': -- p1 = (('C1')); -- p2 = (('C2', target=p1, protecting:output=data)); -- p3 = (('C3', receiver=p1, suspending:input=data)); -- data; -- /* con = ('Console'); */ -- Шаг 1 -- [ goal. -- Шаг 1 /* con ? writeln(data). */ ] ----------------------------------------------- class 'C1': -- internal_data; -- [ goal:- accept(internal_data). -- accept(_). -- message1(A):- internal_data== A. -- function1()= 100. function1()= 300. function1()= internal_data. /* [internal_data]. */ -- Шаг 1 ] ----------------------------------------------- class 'C2': -- target; output; -- data = target ?? function1(); -- [ goal:- output == data. ] ----------------------------------------------- class 'C3': -- input; receiver; -- [ goal:- receiver <- message1(input). ] ----------------------------------------------- |