Property Access

Хотел назвать пост просто ДОСТУП (Access), так как в рамках системы ещё рассматривается тема удаленного доступа к базе данных, а так автор обозначает классификатор из одиннадцати функций, хотя я бы туда добавил ещё … типа тех же struct или setq … но в данном случае речь идёт о списке функций доступа к параметрам объектов, к их атрибутам или характеристикам (термин - “свойство“ мне не нравится) … вот этот список - put get prop ; \=: : :: putl getl wipe meta
https://picolisp.tiddlyhost.com/#Property%20Access
Самой характерной функция здесь является, конечно, prop - извлекает атрибут для key
из атрибута символа sym
. Этот символ — sym1
(если не указано никаких других аргументов) или символ, найденный путем применения алгоритма get к sym1|lst
и следующим аргументам. Возвращается свойство (cons-пара, а не только ее значение), подходящее для прямых (деструктивных) манипуляций с функциями, ожидающими аргумент var
(prop 'sym1|lst ['sym2|cnt ..] 'sym) -> var
: (put 'X 'cnt 0)
-> 0
: (prop 'X 'cnt)
-> (0 . cnt)
: (inc (prop 'X 'cnt)) # Directly manipulate the property value
-> 1
: (get 'X 'cnt)
-> 1
На самом деле, как видим, речь идёт о механизмах get, put и даже set. “get” - именно, как механизм упоминается в документации сплошь и рядом и не случайно функция акцентировалась при самом первом знакомстве с системой. Правда, “put” рассматривался в контексте ввода-вывода, а “set“, вообще, как центральная концепция.
Короче, этим постом зафиксирован прецедент авторской классификации, а в нашем мануале, скорее всего, изменится или акцентирующая тема, либо её обозначение, термин для названия концепции, но какой?.
Subscribe to my newsletter
Read articles from Sergey Shishkin directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Sergey Shishkin
Sergey Shishkin
Всегда чему-то учусь!