Home | Site map | Resume | Mail me

тексты

 
 
 

 

Слоистость
 

"Но разобрать, разложить, расслоить структуры (в известном смысле, более историчное движение, нежели движение "структуралистское" которое тем самым ставилось под вопрос) - это не была какая-то негативная операция."

Деррида, Письмо японскому другу [6]

"Fundamental Theorem of Software Engineering (FTSE): We can solve any problem by introducing an extra level of indirection."

David Wheeler (*)

"Для того, чтобы иметь суждение о вещи, надо в этой вещи жить..."

М. Цветаева, Поэт о критике 

Слой - это анизотроп, в котором открыта свобода движения вдоль его поверхности в его толще, но не перпендикулярно к нему. (Разумеется, это только аналогия, поэтому каждое слово, в том числе и "слой", здесь надо заключать в кавычки и добавлять переносный смысл, насколько возможно, что только улучшит определение.)

Слой обладает глубиной без толщины. Его метрическая толщина не интересна. Интересен его объем, его глубина, которая позволяет двигаться в нем.

Мир слоист,  заполнен до отказа. Вещи протискиваются в просвет, что им предоставлен или под силу. В предоставленном просвете вещи свободны. Так образуются слои. В поле дерево стоит симметрично, структурно, правильно и раскидисто. В чаще оно зажато другими. В пустоте предмет разворачивается - по крайней мере так кажется - согласно своей идее. В тесноте он просачивается сквозь суть окружающего и оформляется ею. В мире идей всегда пустота. В мире вещей большей частью тесно. (Хотя в попперовском третьем мире тоже давка.)

Восприятие формы через отражающую свет поверхность всегда поперек: поверхность противостоит взгляду. Таким образом, восприятие слоя через форму передает его статичный фронтальный вид, но оставляет скрытым его существо - свободу движения вдоль слоя.

Абсолютизация формы ведет к отрицанию существенности и существа поверхности. Поверхность в западном понимании возникает из проявляющей себя формы. В этом заложено тайное равнодушие к поверхности как к чему-то производному. Из этого равнодушия рождается гипс, пластмасса, материал без поверхности, "лепной ангел" Бодрийяра [1].

Слой - это поверхность, обладающая глубиной (а не толщиной). Глубина позволяет не движение вглубь, к некоторой скрытой сущности [см. также 7], а эффективное движение вдоль слоя внутри него. В известной степени, это описывает Делез [5], но у него это движение пока еще определяется множеством внешних точек зрения со взглядом, направленным перпендикулярно складкам поверхности.

В отличие от онтологических слоев Н. Гартмана [2], слои неиерархичны, безразличны друг к другу, не связаны и (взаимо)проницаемы. Срез - это снова взгляд поперек, и не раскрывает иерархии или структурной связи слоев (которая очевидна у Гартмана).

Однако слоистость и не набор гомогенных слоев, различающихся в степени, а слоев, разных по природе. В слоях происходит членение по природе [4].

Геологический или археологический срез, анатомическая пластинация или стэк протоколов в телекоммуникациях очевидным образом подчиняют слоистость иерархической структуры целого. Это лишь частный и, наверно, не самый интересный случай.

Надо отвлечься от идеи взаимосвязи и упорядочения слоев, чтобы приблизиться к слоистости, и взять в качестве аналогии не структуру анатомического среза, а боковой вид стопки старых журналов.

Похоже, здесь нам сможет помочь искусство. Живопись или графика, вероятно, должна прийти нам на помощь в исследовании отдельного слоя, поскольку она имеет дело с плоскостью бумаги, полотна или стены, выражая в их поверхности нечто иное существенными средствами самой поверхности (правилами проективной геометрии, текстурой холста или бумаги, техникой наложения красок или штриха и т. д.).

Живопись и графика - это, в некотором смысле, преобразование поверхности, преображение ее в нечто другое.

В западной живописи Возрождения и Нового Времени другое поверхности - это пространство как протяженность, наполненная формами, движением, светом и тенью. Здесь важна не протяженная поверхность, а прерывание протяженности, формообразующее расчленение, излом, угол, изгиб, выражающие оформленную идею предмета. Поверхность - это часть формы, зеркало для отражения формы, средство для формообразующего отражения света разной интенсивности под разными углами, позволяющее форме быть увиденной.

Другое поверхности доренессансного искусства - орнамент, плоскость украшенная, иллюминированная, оживленная: переплетением растений, архитектурным членением и т.д. Пустая и безвидная поверхность как косный материал должна быть заполненной, уступить место символизму одухотворенной Вселенной.

Можно было бы подробно разобрать другое поверхности в ближневосточной, китайской (обработка яшмы, одного из самых твердых материалов, может служить архетипом китайского отношения к поверхности) или в современной западной культуре, но мы обратимся сразу к тому особенному, что, похоже, случилось в Японии.

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

Особенной ценностью в Японии пользуются предметы со следами употребления [см. напр. 10]; некоторые ремесленные техники  предполагают, что красота предметов проявится не сразу, а только когда ими попользуются некоторое время (например, техника резьбы по лаку негоро, где слои черного лака проступают из-под красного, истертого руками, оттого что вещью пользовались [см. напр. 20]).

Другое японской поверхности - это сама поверхность, и японское прикладное (и высокое) искусство представляет собой полную рефлексию поверхности, и глубина поверхности создается ее рефлексивной многослойностью.

Японский орнамент, на бумаге, ткани или керамике, часто не предназначен занимать всю плоскость. Европейский, ближневосточный или китайский орнамент подменяет, агрессивно и намеренно захватывает поверхность, создает впечатление, что поверхность есть нечто иное: его переплетения растений или геометрические фигуры стремятся распространиться в бесконечность, и их эстетическое воздействие не изменится от этого расползания, поскольку заполнять, преобразовывать плоскость, отсылать к заполненности структурой - в их природе.

Японский орнамент часто заполняет ясно ограниченные области с совершенно различными узорами, как бы дающими друг другу то там, то здесь выход к поверхности. Плоскость теряет единство, превращаясь в набор слоев, а орнамент больше не ставит целью побороть и преобразовать плоскость, а наоборот, усиливает плоскостность, развернутость к нам, умножает количество плоскостей в игре проглядывающих друг сквозь друга слоев.

Например, интересно сравнить традиционный японский орнамент и работы Уильяма Морриса: Моррис был мастером орнамента; его отношение к ремеслу, прикладному искусству, материалу было очень похожим на японское, как и его техника печати, цветовая гамма, антииндустриализм и эстетика предметов "долгого пользования". Тем не менее, в почти произвольно выбранных образцах все равно легко видеть экспансивную силу мотивов Морриса в противоположность спокойной уступчивости элементов японского орнамента, дающих дорогу друг другу. 


Волны и веера. Типичный современный образец японского традиционного орнамента, печать на бумаге.  С вебсайта http://patterns.ming-ling.net

William Morris ( 1834–1896)
Willow Wallpaper Design 

См. также образцы японского орнамента и работ Морриса здесь.

В западных описаниях орнаментов того времени очевидна логика орнаментики как заполнения, маркирования, захвата плоскости в большом и в малом (курсив мой - В. В.): "Сначала определялось положение крупных цветов в положении [sic - В. В.], наиболее подходящем к форме вазы, и вся поверхность разбивалась на симметричные пропорциональные области... Процесс [заполнения поверхности орнаментом] продолжается изображением в промежутках [между крупными элементами] форм меньшего размера, бутонов или стеблей, покуда не заполнено все [пространство]... Этот композиционный метод свойственнен всем стилям восточного орнамента." [22] Свод структурных правил и практически все образцы "Грамматики орнамента" Оуэна Джонса, популярной в середине XIX в., подчеркивают заполнение поверхности симметричными, пропорциональными, ритмическими, структурно (то есть властно) - конструктивно или органически - сильными элементами как основное свойство орнамента. [23] См. также образцы здесь.

В противоположность этому, все элементы на японской картине или в орнаменте, кажется, живут каждый в своем пространстве, то есть каждый предмет пространственно сакрализован в том же смысле, в котором Раушенбах говорит о сакральных пространствах в древнерусской иконописи [8]. Возможно, это происходит из синтоистского обожествления и одухотворения всего чего угодно. Японский орнамент (а часто и живопись) тогда не имеет собственного единого пространства (в отличие от иерархического пространства европейского средневековья, геометрического пространства европейского Возрождения и Нового Времени, символического пространства китайской пейзажной живописи (хотя в последней и использовалась техника многослойных планов). Японское изображение составлено из сакрализованных - но взаимопроницаемых - пространств  (практически каждый из изображенных предметов помещен в свое собственное пространство), любое из которых наслаивается одно на другое и проглядывает в промежутках между остальными.

То же самое мы видим, например, и в градостроительстве: "Например, в районе Фудзимичо [спланированного как прямоугольная сетка - В. В.] одна ось сетки ориентирована в направлении вида на гору Фудзи, создавая несоответствие с осями сеток соседних частей города. Другими словами, концептуально Фудзими не представляет собой часть бесконечно простирающейся прямоугольной сетки, а скорее, он идентифицируется как некоторая область, определяемая несколькими кварталами, характеризующимися тем, что оттуда возможно созерцать гору Фудзи, что представляет собой акт заворачивания (enveloping)." [7, курсив мой - В. В.])

Таким образом, в японском искусстве преобладает взаимопроницаемая слоистость, видимая фронтально как игра сакрализованных областей или изобразительных пространств.

Попробуем выделить структурообразующий элемент "японской" слоистости, начав с длинной цитаты из западной статьи:

"Различение между сакральным и профанным пространством [японской народной культуры], между чистым "внутренним" и нечистым "наружным" сводится к границам синтоистских святынь. "Внутреннее" - это мир природы, в противоположность космосу и небесам. Это нация - в противоположность внешним сообществам. Это дом - в противоположность другим домам. И это сердце или приватная самость человека (private self) - в противоположность его социальной самости (public self). Все эти внутренние, сакральные домены помечены символическими воротами - материальными или нематериальными, - которые служат различению сакральных и профанных путей бытия.

"Наиболее основополагающем различением является таковое между миром природы (пространством производящей активности) и космосом или небесами, которые не принадлежат домену, где ими можно манипулировать, и потому несут угрозу и непредсказуемы. Ками [пантеистические синтоистские божества или духи] населяют оба домена, однако лишь ками, идентифицируемые символами сакральной ориентации и физического разделения (алтари, ворота и т. д.), отмечаются как часть чистого "внутреннего" домена. Алтари и святыни ками космоса/небес, таких как Аматерасу и Сусано-о, помогают "одомашнить" эти божества и перенести их во "внутренний" мир.

Небеса представляют "внешний" мир. [и т. д.]" [26]

Процитированная статья рисует структуру пространства японца как концентрическую последовательность от сакрального центра ко все более профанной периферии и определяет ее структурный элемент, сочетающий сакральную нутрь, профанную наружность и демаркированную граница между ними.

Однако наружность здесь распадается на два элемента: "пространство производящей активности" (то есть, скажем, деревня в отличие от дальнейшей округи; нация в отличие от заграницы; земля в отличие от небес) и внешней частью, которая "не принадлежит домену, где ею можно манипулировать". Эта внешняя часть непредсказуема и опасна. Ее нужно одомашнить.

Получается, что "пространство производящей активности" заключено между внутренним сакральным пространством и внешним, которое по сути дела также сакрально и обладает сверхестественными качествами (сверх естественных качеств, присущих "пространству производящей активности", которое раздвинуто человеческим обитанием, и поэтому все естественные, то есть доступные человеку качества пребывают именно там).


Коридор из ворот тории, ведущих к синтоистскому храму (Токио)

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

Более того, даже и "демаркация" - не самое подходящее здесь слово. Скажем, Маки Фумихико [7] относит оппозицию демаркированной внутренности-наружности к европейским и ближневосточным культурам (церковь как доминирующий центр города демаркированного стенами от внешнего хаоса или угрозы; человек как доминанта жилища, защищенный его стенами, ограждающими от жесткого климата; защитная социальная и телесная оболочка личности как основа его приватной свободы в обществе), тогда как в Японии переживание места и предмета построено на игре слоистого, включающего и бережно выпускающего обертывания [см. напр. 27], создающего (негеометрическую) глубину (оку), где сердцевина ("внутреннее" сакральное) на самом-то деле ничего не содержит и, будучи грубо обнаженной для обозрения, выглядит жалкой, слишком простой и ничтожной, тогда как, несколько преувеличивая, можно сказать, что на классическом Западе все, что  заслуживает внимания, заслуживает также быть увиденным, обнаженным, вожделенным, открытым, ярко освещенным и только тогда приобретает смысл, а значит, по своей сути, не может быть слоистым, и само сокрытие на Западе проистекает от желания раскрыть.

В отличие от западного познавательного архетипа света, формы и зрения, "пространство производящей активности", заключенное между двумя сакральными, отдаленными от непосредственного опыта слоями, придает встрече человека с материалом глубину, позволяющую движение вдоль материала и формирующую мир человеческой деятельности как слой. 

Отсюда происходит и активное, намеренное пространственное и цветовое уплощение в японской живописи и традиционной архитектуре [24] - не столько даже уплощение, сколько сведение опыта к слою, который является средой непосредственного контакта с материалом. Поверхность, ширма, окна, оклеенные бумагой используются не как основа для проекции, а как активное средство, чтобы переработать пространство в плоскость, в слой, не отразить, а вобрать пространство в плоскость, чтобы дать место игре слоев. Отсюда особенное отношение к красоте света, сочащегося сквозь бумагу [10] и уплощение, двумерность; сумерки серой гаммы Рикю [23], особая роль слепых персонажей, взамен с-видетельства непосредственно прикасающихся к событиям и людям, где только прикосновение, контакт играет роль, а не личность рассказчика, который ради этого может добровольно отказаться от зрения [11] и т. д. Рефлексия достигается в проработке поверхности, составляющей собственную глубину как ближайшую доступную открытость, и так используется как инструмент и единственная поистине открытая область познания.

 *  *  *

В конце 60-х годов XX в. Кристофер Александер, американский архитектор и математик австрийского происхождения, показал, что проектирование зданий и городское планирование построенные на принципах иерархических структур не отражают сути жилища и города [14]. Город - это эмергентная система перекрывающихся и взаимодействующих систем. Иерархически спланированный город (который можно представить в виде дерева или системы вложенных множеств), не удовлетворяет логике органического развития и самоорганизации городской структуры. Согласно Александеру, частично-упорядоченное множество гораздо лучше моделирует города, "полные жизни". (Александер, особенно в его недавних книгах, развивает представление о "наполненности жизнью" - но не просто жизнеспособности или способности к экспансии - как основной характеристике сложных систем [см. напр. 13 или 15], но сейчас нас интересуют только "языки паттернов" из его ранних работ.)

   
Перекрывающиеся структуры частично-упорядоченного множества. Из [14]

Приспособление, скольжение одной структуры вдоль другой, одного рода сил вдоль другого (скажем, притирание городских транспортных потоков и, скажем, системы общественного питания) видоизменяет эти силы и в местах их интенсивного взаимодействия рождает интересные, насыщенные, возможно странные, эффективно функционирующие места и явления, составляющие частично-упорядоченное множество. Способы правильной организации этих узлов, мест встречи и интерференции, варианты динамического балансирования сил Александер называет "паттернами" (patterns) [16].

Казалось бы, "силы" (forces) напоминают нечто из механики, тогда как у Александера речь идет о взаимодействии "факторов". Возможно, он предпочел "факторам" "силы", чтобы сохранить коннотацию поля, суперпозиции и, в итоге, слоистости структуры сложной системы.

Здание, жилое пространство, город - это динамическое равновесие разнородных взаимопроникающих сил, сбалансированных паттернами, и сеть таких паттернов Александер называет языком паттернов, поскольку их описания конституируют знаки, отсылающие один к другому.

За огромностью темы, я не буду здесь даже касаться аналогичных - и более глубоких, чем у Александера - явлений лингвистики и философии языка. Сопоставлю только паттерн Александера как пересечение сил и следующую характеристику взглядов Ельмслева: "Языковые элементы (функтивы) признаются не более как результаты пересечения пучков отношений (пучки функций), формулируется отказ видеть в них субстанциальные, положительные величины." [9] - а также цитату из Соссюра: "Лингвистика... оперирует на границе, где встречаются звук и мысль. Контакт между ними рождает форму, а не субстанцию." [Соссюр, 1916 - цит. по 25] со знаменитым высказыванием Уильяма Морриса: "Не может быть искусства без сопротивления в материалах."

Паттерн весь состоит в открытости к силам, больше в нем нет ничего, кроме со-ответствия силам, которые он балансирует. Его можно обобщить, потому что силы несут в себе константную, повторяющуюся структуру, аттрактор, стоячую волну. Паттерн - это то, чего нет. Это зазор, прослойка, слой между силами. Когда он обобщен и описан как бы в отсутствии конкретных сил, кажется, что он представляет собой некоторую прочную конструкцию. 

Язык паттернов Александра, родившийся в архитектуре и градостроительстве, говорит об органическом развитии структур вообще, в том числе и формальных. Поэтому его идеи было легко перенести в программирование, где язык паттернов (конечно, не он один) за последнее десятилетие привел к своего рода буму. (Под влиянием идей Александера то же самое происходит, но медленнее, в организации индустриальных проектов.)

Программирование послужит нам хорошим примером и позволит показать, какую роль слоистость сыграла в роде деятельности, который, совершенно изменив человечество за последние десятилетия, укоренен в наиболее формализованной и логической части западного знания; универсальном роде прикладной деятельности, набрасывающим формально-языковую сетку на все, к чему прикасается человек: от режимов стиральной машины до моделирования социальных или астрофизических процессов.

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

Формализация и изобретение новых языков, стандартизация, разного рода методы "дисциплинированной" разработки, попытки создания универсальных прикладных библиотек или программных продуктов (например баз данных) имели лишь ограниченный успех. Параметризация, новые языковые и организационные средства, универсальные продукты быстро теряли универсальность или обрастали деталями и становились чрезвычайно громоздкими.

С приходом паттернов класс, библиотека или конечный продукт в программировании были наконец осознаны не просто как нечто сконструированное (в духе промышленного производства или марковского конструктивизма), а как совокупность эмергентных структур, складывающаяся как область пространства решений, ограниченная действием сил: логических, математических, утилитарных, коммерческих, организационных, эстетических, - причем область со степенями свободы, открывающими возможность движения в некоторых направлениях, что как раз и есть слой.

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

Объектно-ориентированный подход был введен для более адекватного программного моделирования управляемых систем или изучаемых объектов. Основными понятиями в объектно-ориентированных языках являются класс и объект как представитель некоторого класса. Скажем, если я проектирую блок управления автомобилем, то в C++ я могу начать определять класс "блок управления автомобиля" следующим образом:

class car_control_type
{
    ignition_type ignition; // зажигание

    brake_type brake; // тормоз

    accelerator_type accelerator; // акселератор
    // и т. д.
};

Далее я могу написать:

car_control_type car_control; // создать управляющий блок
car_control.ignition.start(); // завести мотор
// и т. д.

то есть создать программный объект-представитель класса и в следующей строке - дать инструкцию завести мотор, вызвав метод класса ignition (зажигание).

То есть класс представляет собой абстракное описание некоторого вида объектов, схватывающее их черты, существенные для моделирования.

Далее вводится отношения между классами, специализация (наследование: скажем, класс "кошка" может наследовать от класса "животное") , а также  принципы объектно-ориентированного подхода: инкапсуляция (кошка может мурлыкать, но пользователь не знает, как она это делает) и полиморфизм (если "круг" и "квадрат" - "фигуры", то у каждого из них есть свойство "площадь", и, хотя вычисляется она по-разному, чтобы ее запросить, достаточно знать, что объект является представителем класса "фигура": circle.area() и square.area()) .

Считалось, что эти принципы достаточны, чтобы эффективно описывать программистские задачи, предметная область которых представлялись как набор взаимодействующих объектов реального мира, скажем, частей самолета (для его системы управления), структуры фирмы (для ее базы данных) или социальной группы (для социологического моделирования) и т. д.

Мир моделировался как вместилище взаимодействующих объектов, обладающих скрытой внутренней структурой, внешними свойствами и поведением.

Однако когда дошло до дела, такой подход оказался принципиально недостаточным. Он работал, но не принес желанной универсальности. Только относительно простые классы укладывались в аккуратные иерархии наследования. Небольшое изменение их свойств часто разрушало их структуру, требовало массу работы, а программы трудно было назвать удобочитаемыми или красивыми. Хотя представление о мире как о совокупности сущих, объектов, обладающих формой, свойствами и поведением само по себе не приводило к инженерным парадоксам, но не позволяло эффективно работать с языковым материалом и ставило трудноуловимые ограничения на степень сложности модели. Метаязык наивного объектного подхода оказался нестабильным и недостаточно выразительным.

Одним из приемов объектного программирования, вытекающим из принципа инкапсуляции, было "заворачивание" (wrapping), когда класс "заворачивался" в другой класс, который изменял свойства "завернутого" и обычно принадлежал более высокому структурному уровню. Этот прием был настолько важным, что вошел в поговорку как основная теорема программирования (см. эпиграф).

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

За последнее десятилетие прорыв (policy-oriented design, metaprogramming) в использовании шаблонов (templates) в С++ позволил придать слоям в многослойных классом необычайную подвижность относительно друг друга. Методы, связанные с использованием шаблонов (templates) считаются одним из важнейших вкладов С++ в программирование и computer science [28]. (Параметры шаблона - своего рода переменные, которые говорят, что на из месте должны быть классы, но не говорят, какие именно.)

Стало возможным легко заменять один слой другим и как бы двигаться вдоль слоев. Хорошие классы в C++ производят ощущение слоистой воздушности, проницаемости во нескольких направлениях, скольжения их компонентов друг вдоль друга.

Кроме того, окончательное решение о назначении класса откладывается до момента, когда на место всех шаблонов будут подставлены конкретные классы. В хорошем классе параметр шаблона - это просвет, определенный паттерном сил, его ограничивающих.

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

Новый подход отличают универсализм, лаконичность, эффективность и красота.

Поскольку создать универсальный язык или библиотеку оказалось слишком трудно или, скорее, невозможно, программирование и computer science перешли к разработке таких программ, в которых окончательное решение можно отложить. Более того, его надо откладывать до последней возможности, и это также стало одним из принципов программирования, а паттерны показали, как это можно сделать. Оставленные степени свободы определяют слой, в котором можно передвигаться и приспосабливаться, что также делает части продукта проницаемыми, разъемными, скользящими вдоль друг друга.

Отроченность решения определила своеобразный отказ от истины как соответствия описания или модели объекту или положению вещей, adaequatio rei et intellectus, поскольку современная программа теперь не просто их моделирует, а явным образом говорит, что окончательный вид структуры, которую она описывает, принципиально неопределен. С другой стороны, верность отдельных фрагментов или паттернов становится аналитической, локальной, местной; от них требуется не глобальная правильность, а только непротиворечивость в себе и притертость к соседним объектам, областям или слоям.

В программе как модели предмет выступает из темноты, постепенно и локально показывая свои существенные свойства, но не все, и программная абстракция остается осознанно незавершенной, открытой, проницаемой для добавления новых элементов, измерений и слоев.

Интересно, что программа, написанная в этом стиле, неожиданно приобретает визуальное и концептуальное молчаливое спокойствие. 

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

 

(*) Фундаментальная теорема программирования: "Любую проблему можно решить, введя дополнительный уровень [слой] (layer) непрямой [референции] (indirection)." Дэвид Джон Уилер.

 

Литература

  1. Ж. Бодрийяр, "Символический обмен и смерть". - Добросвет, М. 2000, ISBN 5-7913-0040-9.

  2. Н. Гартман, Старая и новая онтология // Историко-философский ежегодник. 1988. М., «Наука», 1988. С. 320-324

  3. Ф. Гиренок, "Н. Хомский "Язык и мышление"".

  4. Ж. Делез, Бергсонизм. // Ж. Делез, Критическая философия Канта: учение о способностях. Бергсонизм. Спиноза. - Per Se, М. 2000, ISBN 5-9292-0001-7.

  5. Ж. Делез, Складка. Лейбниц и барокко. - Логос, М. 1998, ISBN 5-8163-003-2.

  6. Ж. Деррида, Письмо японскому другу // Вопросы философии.- 1992.- № 4.- С. 53-57.

  7. Маки Фумихико, Пространство японского города и концеция оку // The Japan Architect, 5, 1979.

  8. Б. Раушенбах, Геометрия картины и зрительное восприятие. - Азбука-классика, С.-Пб., 2002. ISBN 5-352-00001-X.

  9. И. П. Сусов, История языкознания - http://litbook.org/

  10. Танидзаки Дзюнъитиро, Похвала тени // Похвала тени. - Азбука-классика, С-Пб., 2001.

  11. Танидзаки Дзюнъитиро, Рассказ слепого; История Сюнкин // Похвала тени. - Азбука-классика, С-Пб., 2001.

  12. Abrahams, David, Gurtovoy Aleksey, C++ Template Metaprogramming, Addison-Wesley, 2004.

  13. Alexander, Christopher, New Concepts In Complexity Theory arising from studies in the field of architecture. - 2003

  14. Alexander, Christopher, The City Is Not a Tree // Architectural Forum, Vol 122, No 1, April 1965, but see e.g. http://rudi.net/pages/8755

  15. Alexander, Christopher, The Nature of Order. - 2004.

  16. Alexander, Christopher, A Pattern Language: Towns, Buildings, Construction. - 1977.

  17. Alexander, Christopher, The Timeless Way of Building. - 1979.

  18. Alexandrescu, Andrei, Enforcements // Dr. Dobb's Journal, 2003 http://www.ddj.com/dept/cpp/184403864

  19. Cockburn, Alistair, Software development as community poetry writing.

  20. Fahr-Becker, Gabrielle and oth., The Art of East Asia. - Koenemann, 1999.

  21. Jones, Owen, 1809-1874. Examples of Chinese ornament selected from objects in the South Kensington Museum and other collections. - London: S & T. Gilbert, 1867

  22. Jones, Owen, Grammar of Chinese Ornament. - London, 1856.

  23. Jones, Owen, Grammar of Ornament. - Collins & Brown.

  24. Kurokawa, Kisho, The Philosophy of Symbiosis. - Academy Editions.
    ISBN 1-85490-304-7

  25. McDonald, Meaningful Arrangement: exploring the syntactic description of texts - In print.

  26. Nadeau, Randell L., Dimensions of Sacred Space in Japanese Popular Culture // Intercultural Communication Studies VI: 2, 1996

  27. Ma. Angels Trias i Valls, Wrapped Gifts: Ritual Prestations and Social Obligations in Contemporary Japan, 2001, University of Kent, Canterbury.

  28. Stroustrup, Bjarne, Evolving a language in and for the real world: C++ 1991-2006. - 2007.

  
 

 

Sydney, 2007

 
 

 

Оглавление
Слоистость © 2007 Всеволод Власкин

Home | Site map | Resume | Mail me

  1