Wrapper

Sergey ShishkinSergey Shishkin
2 min read

Новый для меня термин, поэтому я пока не имею ясной позиции. Имеет с десяток определений или интерпретаций только в контексте программирования - как программа, вызывающая другую программу (Wrapper function), как паттерн-адаптер (Wrapper pattern), как процедура, извлекающая регулярное подсодержимое неструктурированного или слабоструктурированного источника информации Wrapper (data mining), как сервис (Service wrapper), класс ООП в Java (Primitive wrapper class), фильтр доступа в сети (TCP Wrapper), контейнер для содержания метаданных (digital container format) … и так далееWrapper libraryDriver wrapper … а ещё есть термины, использующиеся, фактически, как синонимы - декоратор и делегат.

В системе PicoLisp есть функция или символ wrap - первая форма которой возвращает переходный (транзитный) символ со всеми символами в lst, упакованными в строки с максимальной длиной cnt, а вторая форма преобразует символ в список транзитных символов, каждый с максимальной длиной cnt.

(wrap 'cnt 'lst) -> sym

(wrap 'cnt 'sym) -> lst

: (wrap 20 (chop "The quick brown fox jumps over the lazy dog"))
-> "The quick brown fox^Jjumps over the lazy^Jdog"
: (wrap 8 (chop "The quick brown fox jumps over the lazy dog"))
-> "The^Jquick^Jbrown^Jfox^Jjumps^Jover the^Jlazy dog"
: (wrap 8 "The quick brown fox jumps over the lazy dog")
-> ("The" "quick" "brown" "fox" "jumps" "over the" "lazy dog")

https://picolisp.tiddlyhost.com/#wrap

Но есть целая группа функций или символов - оберток, в основном для реализации механизма транзакций, поэтому и выступающий как неявный классификатор. То есть автор системы не акцентирует его специально, но такая классификация имеет место быть - new! request! set! put! inc! import . Описание каждй “функции“ соответствует фразе “… функция-оболочка … “

https://picolisp.tiddlyhost.com/#Wrapper

0
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

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