Re[19]: КОП в linux
От: Kolhoz Мухосранск  
Дата: 23.06.06 21:10
Оценка: +1
Здравствуйте, Андрей Хропов, Вы писали:

K>> Не та же. Я не могу между more и ls вставить в этой модели ничего (sort, например).

АХ>Почему?
АХ>"File result = more.Process( sort.Process( ls.Process(input) ) )"
АХ>Как я уже говорил, на мой взгляд вся эта работа через каналы — частный случай КОП.

Нельзя менять код ни одного из компонентов.

K>> Не понял вопроса. Легко и непринуждённо обеспечиваем.

АХ>Ну и как вы будете игру (не многопользовательскую, а самую обычную) писать через Unix way?

Опять не понял вопроса? Что мешает? Логика и AI — одним процессом (причём AI — на скриптовом языке), графический движок — другим, всё это вместе завёрнуто в скриптовую обёртку третьим процессом, чтение и разгрёб конфигурации — четвёртым.


K>>>> * корректное сообщение о любых исключительных ситуациях

АХ>>>Сообщение мало. Надо еще данные не убить по возможности.
АХ>>>Без поддержки исключений обработка ошибок — это геморрой жуткий.
АХ>>>Я уж не говорю про RAII. А это предполагает ОО.

K>> ОО тут совершенно не при делах...

АХ>Аргументируй.

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

Кстати, на заметку: исключение — это очень не-ОО сущность. И в компонентных ОО-моделях аналога исключений как бы даже и нет. Обидно, да?

K>> Не обязательно. Не нужна совместимость, на самом деле.

АХ>Как это так? Подаем ASCII а программа хочет Unicode и привет!

А между ними встраивается iconv, и здрасте.

K>> Могу, и как правило вставляю (psnup, ps2ps, мелкие самописные пошкрип-фильтры). Смысла много — postscript обрабатывать весело, легко и просто, буклетик там из него сшить, водяные знаки наложить, или ещё что, а вот pdf потом править обломно будет. Так уж лучше я поправлю ps на этом этапе.

АХ>Правильно, но это уже не ЛЮБЫЕ, а специализированные компоненты, предназначенные для обработки ps.

И что? А надо вставлять wc, строки в ps считать? Зачем? Хотя, grep+wc у меня пару раз было в пайплайне за генерёжкой ps сразу — когда надо было статистику количества страниц вести. Только это всё к теме не относится. То, что я описал (psnup и компания) — это чистейший unix way.

K>> Естественно. А Unix way не требует использования обязательно текстовых потоков.

АХ>А как же тогда вы между ЛЮБЫМИ двумя компонентами третий вставите?

Опять не понял, где вы затруднения углядели. Что я, не могу враппер подсунуть, который по popen() дёрнется вместо другой программки? Не могу на сокет повесить свою прослойку? Да у меня частенько ssh-форвардинг в качетсве быстрых временных затычек в сложных распределённых системах влезает, а в коде этих систем никому и знать не надо, что соединения перехватываются и данные дополнительно обрабатываются. Бинарные данные, кстати.

AX>>> Теперь уже дальше идем в сторону скрещения ОО с функциональщиной . Даже в скриптовых языках, без которых Unix way никуда .


K>> Простите, какие языки? Какая функциональщина? Мне глубоко наплевать на ОО и функциональщину в языках. Наплевать и растереть.

АХ>А позволь поинтересоваться на каких языках ты пишешь?

А какое это имеет значение? См. моё дао — из него ясно следует, что язык роли не играет. Дао работает с любыми языками. Но мы то сейчас не про языки говорим, а про уровень компонентов.

K>> В данном случае источник мирового зла — это OOD, то есть, ОО на уровне проектирования, на компонентном уровне.

АХ>Ужас какой-то. И чем тебя OOD угнетает? Это американский заговор, да?

Вы потеряли нить разговора. Начисто. Постарайтесь подумать ещё раз — на каком уровне абстракции мы выстраиваем компонентную модель? Какие методы формализации предметной области мы должны применять, и какие ограничения на эти методы накладывает семантика компонентной модели? Думайте не менее получаса прежде чем ответить — а то опять скажете что-то не в тему и невпопад, опять смешно будет.

K>> Тут пока никаких языков нет и не предвидится.

АХ>Где тут?

На компонентном уровне. Где же ещё?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.