Контрольный пример, демонстрирующий возможности технологии
DB.NEW
Создадим объект "Поведение клоуна" для клоуна
[] "Поведение клоуна" CLONE_STR
[oid_str] OIDSET GET_BHR CLONE
[oid_str oid] SET_NAMEOBJ [oid]
Создадим объект "Клоун":
[.. ] "Клоун" CLONE_STR
[.. oid_str] CLONE_AGG
[.. oid_str oid] SET_NAMEOBJ [.. oid]
Определим ему поведение
[oid_bhr oid] SET_BHR
Определим в нем поля: X, Y, Цвет
"X" NEWFID SET_NAMEFID [fid] OIDINT "Клоун" NAMEOID AGG+F []
В ДССП можно определить новое слово
: NEWFIELD [ "Имя объекта" "Имя поля"] NEWFID SET_NAMEFID [A L FID]
OIDINT C4C4 NAMEOID AGG+F DD [] ;
"Клоун" "Y" NEWFIELD
"Клоун" "Цвет" NEWFIELD
Создадим методы.
Создать метод "Идти".
"<тело метода "Идти" >" CLONE_STR [oid_kh]
[oid_kh] "Идти" CLONE_STR E2 C2 SET_KH [OID_STRKH]
"Поведение клоуна" NAMEOBJ SET+E
Аналогично создаются другие методы
...
Подготовка для вызова метода по идентификатору:
"Идти" CLONE_STR C "Клоун" NAMEOBJ METHOD? E2 DELOBJ
Подготовка для вызова метода по имени:
"Идти" CLONE_STR
Вызов
[oid] 0 "Клоун" NAMEOBJ [oid_mth 0 oid_obj] SEND