V>Так тоже можно и не только в новом С++. Но под локальностью подразумевалось не это, а видимость процедуры/ф-ии из всего проекта.
То есть, ты только что удесятерил минимально необходимое количество кода.
V>========== V>Показанный вариант имеет кое-какие ограничения при использовании его как параметров шаблонов, поэтому в таком виде его не используют. Он подойдет только если объявить в нем статические методы — они и будут те самые локальные ф-ии, которые придется связывать с аргументами посредством заранее объявленного шаблонного ф-ого типа, например, через boost::bind.
А это именно то о чем я говорил — ручное связывание. Ты бил себя пяткой в грудь что это не надо. Пойми простую вещь, если язык умеет локальные функции — это ФП и тогда не ясно нахрен вообще все твои пример, ибо это ФП против ФП. А если не умеет, то работы в десять раз больше чем ты показал.
Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, samius, Вы писали:
S>>да, ну если так сложно со светом, давай представим мяч, который попал в тебя рикошетом от двери. Ты будешь думать что это дверь послала в тебя мяч? Не, я догадывался что у тебя проблемы с дверьми, но что настолько... Пожалуй мой учитель тут не виноват.
V>Конечно виноват, он не проверил у тебя раздел оптики и взаимодействия элементарных частиц. V>1. Не существует способа узнать, был ли фотон отражен, или сгенерирован. V>2. Более того, отраженный фотон не факт, что это тот же самый фотон, который падал на поверхность. Отражение фотона от электрона (а ты видишь 99.9999% отраженных фотонов именно от электронов) описывается как поглощение одного фотона и испускание другого.
Раз "не существует" и "описывается", то лесом твою оптику. В быту двери не испускают свет.
S>>Слушай, а ты машину водишь? И вообще, когда смотришь, фокусируешься на всем подряд и спрашиваешь каждую вещь, видишь ли ты ее?
V>Да, я сканирую обстановку, я получаю "информацию". Каждый предмет шлет визуальную информацию непрерывно, до тех пор, пока мы подпитываем их энергией извне — освещаем. Но я получаю эту информацию только тогда, когда я ее запрашиваю — смотрю в нужную сторону. Считай, что объекты постоянно шлют события-фотоны, но я то подписываюсь на эти события, то отписываюсь от них. Цикл подписки на событие и получения информации о событии я уверен, можно рассматривать как "опрос". Собсно, это так по-определению в технике. Например в семантике "опрос датчиков". Датчики регистрируют некий параметр непрерывно, но существуют фазы игнорирования этой информации и фазы опроса. Точно так же состояние объекта можно считать непрерывным генерированием одного и того же события, но мы вправе опросить это состояние (вызвать для опроса некое св-во) только когда нам надо.
Даже с позиций ООП ты нагородил полный бред. Что бы послать сообщение, нужна идентичность. Подписка — это передача идентичности. Выходит что прежде чем предмет начнет высылать тебе информацию, ты должен передать ему свою идентичность. А как ты это сделаешь, если предмет тебе еще не посылал информацию о своем существовании. А широковещательные сообщения это уже не ООП.
V>>>Да, повторно переданная одна и та же информация не изменяет энтропию, увы. Поэтому ленивые программисты поступают с лишней информацией... впрочем, ты уже в курсе как. S>>Ну вот я и утверждаю что модель далека. А ты решил поспорить.
V>А я утверждал, что в ООП крутить-вертеть любые подробности любых моделей — проще всего. Удобно и дешево.
Только не забывай о задаче. Надо-то было дверь открыть, а ты видишь уже до каких подробностей скатился... Но и там ООП что-то не выруливает пока и к решению тебя не приближает.
V>Совсем чистый язык совсем бесполезен как прикладной. Например, совсем чистые языки док-ва теорем нужны для того, чтобы компилятор сказал — компиллируется или нет программа. Это всё. Но для меня этого бесконечно мало.
Твои проблемы не являются аргументом в споре.
S>>Я уже задолбался писать, почему я спорю и за что. А про зачем столько пишешь — ну мне ведь интересно, куда ты дальше вильнешь.
V>Нет, ты таки не пояснил: V>
V>Кэй писал что вдохновлялся атомами Лиспа. На самом деле от Лисп-атома до кортежа функций не так далеко.
V>Но ты спорил, когда я поправлял тебя, что бесконечно далеко. Вот мне и любопытно — это что за спор был такой?
Я тебе уже ответил по этому поводу. Отвечу еще раз. То была проходная гипотеза. V>Скажем так, в последнее время мне хочется определиться, насколько всерьез тебя воспринимать. Сорри за офтоп, но последние примерно пару лет твои посты далеки от былой вдумчивости.
Ты свои посты почитай У меня по поводу них вопрос о серьезности даже не стоит. Хаскель из СП, подписка на получение фотонов... Жги еще!
S>>Слушай, ну концепция-то одна на все — мешок указателей на функции. Только от мешка до ООП далеко еще.
V>Вооот. "Мешок". Т.е. "нечто", собраное воедино и относящееся к одному и тому же... )))
тупл V>Понимаешь... Если обмен сообщениями рассматривать как обмен информацией (а оно именно так), то ничуть не далеко.
Дальше, чем до тайпклассов хаскеля, т.к. там даже понятие сообщения не нужно. А еще не нужна идентичность, поведение и т.п.
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, samius, Вы писали:
S>>Так откуда вытекает требование?
I>Это никакое не требование. ООП всего лишь инструмент для перевода модели в код. Эффективность меряешь сам. ООП здесь ничем не помогает. То есть неэффективная модель может быть переведена в неэффективный код и ООП здесь ни при чем. http://www.rsdn.ru/forum/philosophy/4850451.1.aspx
Здравствуйте, Философ, Вы писали:
Ф>Здравствуйте, samius, Вы писали:
S>>Я уже на этот бред отвечал что с дверьми не разговариваю.
Ф>http://www.rsdn.ru/forum/test/4843258.1.aspx
Здравствуйте, samius, Вы писали:
V>>1. Не существует способа узнать, был ли фотон отражен, или сгенерирован. V>>2. Более того, отраженный фотон не факт, что это тот же самый фотон, который падал на поверхность. Отражение фотона от электрона (а ты видишь 99.9999% отраженных фотонов именно от электронов) описывается как поглощение одного фотона и испускание другого.
S>Раз "не существует" и "описывается", то лесом твою оптику.
Она не моя. Законы оптики существует независимо от нас с тобой в частности и от человека в общем.
S>В быту двери не испускают свет.
У меня испускает. Лампочка на звонке прямо на двери.
Да и какая разница, в быту или нет, если наша программа всегда абстракция прямо по определению? Тебе вообще не должно быть важно, сама дверь испускает сигнал или отражает его так, что ты способен расмотреть эту дверь.
Ты сам разве не видишь, как далеко ты уже пытаешься убежать от банальных, вообще-то, вещей?
S>>>Слушай, а ты машину водишь? И вообще, когда смотришь, фокусируешься на всем подряд и спрашиваешь каждую вещь, видишь ли ты ее?
V>>Да, я сканирую обстановку, я получаю "информацию". Каждый предмет шлет визуальную информацию непрерывно, до тех пор, пока мы подпитываем их энергией извне — освещаем. Но я получаю эту информацию только тогда, когда я ее запрашиваю — смотрю в нужную сторону. Считай, что объекты постоянно шлют события-фотоны, но я то подписываюсь на эти события, то отписываюсь от них. Цикл подписки на событие и получения информации о событии я уверен, можно рассматривать как "опрос". Собсно, это так по-определению в технике. Например в семантике "опрос датчиков". Датчики регистрируют некий параметр непрерывно, но существуют фазы игнорирования этой информации и фазы опроса. Точно так же состояние объекта можно считать непрерывным генерированием одного и того же события, но мы вправе опросить это состояние (вызвать для опроса некое св-во) только когда нам надо. S>Даже с позиций ООП ты нагородил полный бред.
Необоснованно по абзацу целиком. Но мне бы хотелось твою т.з. насчет концепции "непрерывного генерирования сигналов".
S>Что бы послать сообщение, нужна идентичность. Подписка — это передача идентичности. Выходит что прежде чем предмет начнет высылать тебе информацию, ты должен передать ему свою идентичность.
Опять нет.
S>А как ты это сделаешь, если предмет тебе еще не посылал информацию о своем существовании. А широковещательные сообщения это уже не ООП.
Это отличное ООП, см. мультикаст делегаты. Ведь "адрес" тоже может быть не конкретикой, а абстракцией. Для событий дотнета приемником события является на самом деле мультикаст делегат, то бишь некая "шина", имеющая собственный "адрес". Это полный аналог происходящего в электронике, в которой шина — лишь посредник м/у компонентами, эдакий элемент механики доставки информации. Активный элемент схемы понятия не имеет, кому конкретно он посылает сигналы, их получает любой, подключившийся к шине. В ООП этот паттерн называется mediator и этот паттерн ни разу не вступает в противоречие с ООП. Ровно наоборот — обеспечивает важное кач-во слабой связанности. Собсно, обычная косвенная адресация (переменная ссылочного типа) — это тоже разновидность паттерна mediator. Вот почему простая косвенная адресация имеет такую мощь с т.з. ОО-дизайна (в отличие от ФП) — это же целый нехилый ОО-паттерн.
Аналогично с т.з. оптики адресом фотонов является вектор их распространения. Проводящее свет пространство в таком случае выступает посредником-средой доставки информации.
V>>А я утверждал, что в ООП крутить-вертеть любые подробности любых моделей — проще всего. Удобно и дешево. S>Только не забывай о задаче. Надо-то было дверь открыть, а ты видишь уже до каких подробностей скатился... Но и там ООП что-то не выруливает пока и к решению тебя не приближает.
А я предупреждал, что на ООП без проблем можно скатиться к любым подробностям. Причем, за счет абстракций ты этого даже можешь не увидеть в статичном публичном АПИ, хотя это вполне может отразиться в динамике происходящего. Необходимый тебе предел подробностей можно задать через ТЗ. Я лишь показываю, насколько у тебя развязаны руки, если брать ООП. Любые навороты моделирования выходят крайне дешевы... в сравнении с попыткой натянуть на них, например, ФП.
V>>Совсем чистый язык совсем бесполезен как прикладной. Например, совсем чистые языки док-ва теорем нужны для того, чтобы компилятор сказал — компиллируется или нет программа. Это всё. Но для меня этого бесконечно мало. S>Твои проблемы не являются аргументом в споре.
Являются. На абсолютно чистом языке невозможно написать полезную программу, ведь она не сможет ввод-вывод, то бишь ты никогда даже не узнаешь, запущена она или нет. Это будет фантом, а не программа. ))
V>>Скажем так, в последнее время мне хочется определиться, насколько всерьез тебя воспринимать. Сорри за офтоп, но последние примерно пару лет твои посты далеки от былой вдумчивости. S>Ты свои посты почитай У меня по поводу них вопрос о серьезности даже не стоит. Хаскель из СП, подписка на получение фотонов... Жги еще!
Это от непонимания происходящего, от цепляние за догмы как за соломинки. Зачем ты запрещаешь сам себе ставить мысленные эксперименты? )) Смысл?
Я уже говорил, что понимать как и что устроено и откуда растут ноги у тех или иных решений надо всегда. Я не приемлю этой вот манеры заведомо абстрагироваться от происходящего. Это же догматика в чистом виде. Более того, я тебе дал ссылку чуть выше на обсуждение, в том обсуждении показательно то, что умозрительно были выведены некоторые закономерности-ограничения относительно рассматриваемомго примера (параметрический полиморфизм). То бишь, тот факт, что в случае неизвестной на этапе компиляции длины списка тот пример мог быть реализован только в боксированном виде — это уже не просто факт, а некая выведенная закономерность. То бишь, понятие более сильное чем факт, на которое можно полагаться не только в текущей версии компилятора, но и в любой последующей (до тех пор, пока он будет поддерживать параметрический полиморфизм в таком точно виде). Что это дает? Любые такие закономерности позволяют тебе обогащать собственное представление о низлежащей модели, то бишь выходить за рамки изначального упрощенного понимания (догм). Причем, вполне надежно и оправданно — ведь необходимость боксированного представления в том обсуждении была доказана. То бишь, ты можешь располагать при проектировании более подробной моделью, пользуясь всеми её св-вами Вот и всё кино.
Насчет Хаскеля и СП — я ХЗ почему ты там так и не смог ответить аргументированно (и никто не смог), а здесь вспомнил опять.
В энергичной манере исполнения ветвление в ФП было бы полностью аналогично происходящему в СП... То бишь твои аргументы были исключительно о ленивости, которая... оп-па, заведомо не должна влиять на семантику. И этот аргумент ты так и не перепрыгнул... И не перепрыгнешь, ес-но.
V>>Вооот. "Мешок". Т.е. "нечто", собраное воедино и относящееся к одному и тому же... ))) S>тупл
Тупл вполне себе тип. А уж АлгТД — не просто тип, а натуральный абстрактный тип, на котором сидит весь хаскелевский рантайм-полиморфизм.
V>>Понимаешь... Если обмен сообщениями рассматривать как обмен информацией (а оно именно так), то ничуть не далеко. S>Дальше, чем до тайпклассов хаскеля, т.к. там даже понятие сообщения не нужно. А еще не нужна идентичность, поведение и т.п.
Кому не нужна? Насколько я вижу программы на хаскеле — экземпляр какой-нить монады (не только IO) вполне себе обеспечивает "рамки" некоего вычислительного процесса. А идентичность — это и есть способ отличить одно от другого, расставить те самые "рамки".
Просто здесь (на этом форуме) постоянно идет какая-то путаница, крепко присыпанная догмами. Если нужна идентичность + измененяемое состояние — непременно считается, что это возможно только через мутабельность. Дык, это же в текущей регистровой памяти, где идентичность (грубо) подменяется адресом регистра. Вспомни, ты же сам всегда стараешься уйти от подробностей. А здесь-то почему убежать не можешь? В координатах, например, ассоциативной памяти, полноценное ООП будет работать поверх иммутабельной низлежащей вычислительной модели. В этом случае мутабельность должна будет эмулироваться примерно так же, как эта мутабельность эмулируется в Хаскеле на State или других трюках. Это именно то, почему создатель Хаскеля признал, что если мы можем эмулировать мутабельность и все связанные с ней эффекты, то нахрена фсё? ))) На самом деле, прикол в том, что в случае Хаскеля у нас получился "двойной слоёный пирог", и более ни в чем.
Это я уже молчу о том, что регистровая память полностью эквивалентна ассоциативной, если за ключ ассоциации взять некий порядковый номер. Как тебе такая изоморфность мутабельной и иммутабельной низлежащей модели? Вот нарисуй на Хаскеле некий dictionary<адрес, объект> и смоделируй на этом dictionary память компьютера c операциями read/write (возвращающими новое состояние "памяти", ес-но). Потом попробуй найти отличия от императивного мира.
Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, samius, Вы писали:
S>>Раз "не существует" и "описывается", то лесом твою оптику.
V>Она не моя. Законы оптики существует независимо от нас с тобой в частности и от человека в общем.
В том числе поэтому давай ты не будешь вписывать в законы идентичность получателя фотона
S>>В быту двери не испускают свет.
V>У меня испускает. Лампочка на звонке прямо на двери.
Ты добрался в тонкостях до фотонов и тут же перестаешь отличать дверь от лампочки. Толсто.
V>Да и какая разница, в быту или нет, если наша программа всегда абстракция прямо по определению? Тебе вообще не должно быть важно, сама дверь испускает сигнал или отражает его так, что ты способен расмотреть эту дверь.
Мне неважно, но именно ты ведь пытаешься натянуть физику на ООП.
V>Ты сам разве не видишь, как далеко ты уже пытаешься убежать от банальных, вообще-то, вещей?
Это ты убегал и зарывался в тонкости. Я лишь наблюдал за этим и подтролливал.
S>>>>Слушай, а ты машину водишь? И вообще, когда смотришь, фокусируешься на всем подряд и спрашиваешь каждую вещь, видишь ли ты ее?
S>>Даже с позиций ООП ты нагородил полный бред.
V>Необоснованно по абзацу целиком. Но мне бы хотелось твою т.з. насчет концепции "непрерывного генерирования сигналов".
Необоснован твой абзац с подпиской на фотоны. По поводу концепции "непрерывного генерирования сигналов", то если ты говоришь о фотонах, а не о волне, то ничего непрерывного в той концепции нет.
S>>Что бы послать сообщение, нужна идентичность. Подписка — это передача идентичности. Выходит что прежде чем предмет начнет высылать тебе информацию, ты должен передать ему свою идентичность.
V>Опять нет.
Что нет? Не натягивается?
S>>А как ты это сделаешь, если предмет тебе еще не посылал информацию о своем существовании. А широковещательные сообщения это уже не ООП.
V>Это отличное ООП, см. мультикаст делегаты. Ведь "адрес" тоже может быть не конкретикой, а абстракцией. Для событий дотнета приемником события является на самом деле мультикаст делегат, то бишь некая "шина", имеющая собственный "адрес".
Мультикаст делегат является собственно объектом с конкретной идентичностью, и посылает он сообщения объектам с конкретной идентичностью. Разве что не только объектам. И ничего широковещательного аки в эфире в мултикаст делегате нет. Медиатор тоже не в тему, т.к. имеет конкретный адрес.
V>Аналогично с т.з. оптики адресом фотонов является вектор их распространения. Проводящее свет пространство в таком случае выступает посредником-средой доставки информации.
Расскажи теперь как твой глаз подписывается на сообщения от всевозможных векторов, входящих в него.
V>А я предупреждал, что на ООП без проблем можно скатиться к любым подробностям. Причем, за счет абстракций ты этого даже можешь не увидеть в статичном публичном АПИ, хотя это вполне может отразиться в динамике происходящего. Необходимый тебе предел подробностей можно задать через ТЗ. Я лишь показываю, насколько у тебя развязаны руки, если брать ООП. Любые навороты моделирования выходят крайне дешевы... в сравнении с попыткой натянуть на них, например, ФП.
Я знаю что развязаны, я выступаю против того что ООП естественным образом отражает мир.
S>>Твои проблемы не являются аргументом в споре.
V>Являются. На абсолютно чистом языке невозможно написать полезную программу, ведь она не сможет ввод-вывод, то бишь ты никогда даже не узнаешь, запущена она или нет. Это будет фантом, а не программа. ))
Ты от исходного тезиса отклонился уже на 120 градусов. И напомню, хаскель все еще считается чистым языком общего назначения.
S>>Ты свои посты почитай У меня по поводу них вопрос о серьезности даже не стоит. Хаскель из СП, подписка на получение фотонов... Жги еще!
V>Это от непонимания происходящего, от цепляние за догмы как за соломинки. Зачем ты запрещаешь сам себе ставить мысленные эксперименты? )) Смысл?
Разве же запрещаю? Я просто не делаю из них очень резкие выводы, как у тебя.
V>Я уже говорил, что понимать как и что устроено и откуда растут ноги у тех или иных решений надо всегда. Я не приемлю этой вот манеры заведомо абстрагироваться от происходящего. Это же догматика в чистом виде. Более того, я тебе дал ссылку чуть выше на обсуждение, в том обсуждении показательно то, что умозрительно были выведены некоторые закономерности-ограничения относительно рассматриваемомго примера (параметрический полиморфизм). То бишь, тот факт, что в случае неизвестной на этапе компиляции длины списка тот пример мог быть реализован только в боксированном виде — это уже не просто факт, а некая выведенная закономерность. То бишь, понятие более сильное чем факт, на которое можно полагаться не только в текущей версии компилятора, но и в любой последующей (до тех пор, пока он будет поддерживать параметрический полиморфизм в таком точно виде). Что это дает? Любые такие закономерности позволяют тебе обогащать собственное представление о низлежащей модели, то бишь выходить за рамки изначального упрощенного понимания (догм). Причем, вполне надежно и оправданно — ведь необходимость боксированного представления в том обсуждении была доказана. То бишь, ты можешь располагать при проектировании более подробной моделью, пользуясь всеми её св-вами Вот и всё кино.
А теперь о связи между боксированным представлением и вытеканием хаскеля из СП. Просим.
V>Насчет Хаскеля и СП — я ХЗ почему ты там так и не смог ответить аргументированно (и никто не смог), а здесь вспомнил опять.
Это ты не смог ничего аргументированного. Точнее все твои аргументы про побочные эффекты разнесли на молекулы. Напомню, что тезис твой, и доказывать его тебе. То что на твой взгляд у оппонентов возникли проблемы с контраргументацией не делает твой тезис истинным.
V>В энергичной манере исполнения ветвление в ФП было бы полностью аналогично происходящему в СП... То бишь твои аргументы были исключительно о ленивости, которая... оп-па, заведомо не должна влиять на семантику. И этот аргумент ты так и не перепрыгнул... И не перепрыгнешь, ес-но.
Я уже отвечал на это, что дело не только в ленивости, а еще и в отсутствии побочных эффектов. Ленивость здесь лишь снимает необходимость особой формы.
V>>>Вооот. "Мешок". Т.е. "нечто", собраное воедино и относящееся к одному и тому же... ))) S>>тупл V>Тупл вполне себе тип. А уж АлгТД — не просто тип, а натуральный абстрактный тип, на котором сидит весь хаскелевский рантайм-полиморфизм.
А что, типы и в частности туплы это теперь прерогатива ООП?
V>>>Понимаешь... Если обмен сообщениями рассматривать как обмен информацией (а оно именно так), то ничуть не далеко. S>>Дальше, чем до тайпклассов хаскеля, т.к. там даже понятие сообщения не нужно. А еще не нужна идентичность, поведение и т.п.
V>Кому не нужна? Насколько я вижу программы на хаскеле — экземпляр какой-нить монады (не только IO) вполне себе обеспечивает "рамки" некоего вычислительного процесса. А идентичность — это и есть способ отличить одно от другого, расставить те самые "рамки".
Что за "экземпляр" монады?
V>Просто здесь (на этом форуме) постоянно идет какая-то путаница, крепко присыпанная догмами. Если нужна идентичность + измененяемое состояние — непременно считается, что это возможно только через мутабельность. Дык, это же в текущей регистровой памяти, где идентичность (грубо) подменяется адресом регистра. Вспомни, ты же сам всегда стараешься уйти от подробностей. А здесь-то почему убежать не можешь? В координатах, например, ассоциативной памяти, полноценное ООП будет работать поверх иммутабельной низлежащей вычислительной модели. В этом случае мутабельность должна будет эмулироваться примерно так же, как эта мутабельность эмулируется в Хаскеле на State или других трюках. Это именно то, почему создатель Хаскеля признал, что если мы можем эмулировать мутабельность и все связанные с ней эффекты, то нахрена фсё? ))) На самом деле, прикол в том, что в случае Хаскеля у нас получился "двойной слоёный пирог", и более ни в чем.
Из того что мы можем что-то проэмулировать совсем не следует что мы должны что-то эмулировать. Так что я не понимаю твоих проблем. Ну это как все равно что писать на эмуляции паскаля через макросы под С++ компилятор.
V>Это я уже молчу о том, что регистровая память полностью эквивалентна ассоциативной, если за ключ ассоциации взять некий порядковый номер. Как тебе такая изоморфность мутабельной и иммутабельной низлежащей модели? Вот нарисуй на Хаскеле некий dictionary<адрес, объект> и смоделируй на этом dictionary память компьютера c операциями read/write (возвращающими новое состояние "памяти", ес-но). Потом попробуй найти отличия от императивного мира.
во-первых, отличия на поверхности. Код эмуляции будет чистым.
Во-вторых, в возможности эмуляции одного на другом нет ничего нового со времен тезиса Черча-Тьюринга. Если ты хочешь использовать это как аргумент в пользу происхождения хаскеля от СП, то так же можно будет использовать этот же аргумент в пользу происхождения Паскаля от лямбда счисления.
Здравствуйте, -VaS-, Вы писали:
I>>"Не мешает" это не значит, что помогает. Просто порог входа в ООП гораздо ниже в силу того, что ООП можно хорошо изучать на легкодоступных примерах. Даже без книг этот порог берется на раз, если прилагать хоть какие то усилия.
VS>Ты много видел вживую хорошего настоящего ОО кода?
Здравствуйте, samius, Вы писали:
I>>Это никакое не требование. ООП всего лишь инструмент для перевода модели в код. Эффективность меряешь сам. ООП здесь ничем не помогает. То есть неэффективная модель может быть переведена в неэффективный код и ООП здесь ни при чем. S>http://www.rsdn.ru/forum/philosophy/4850451.1.aspx
Здравствуйте, vdimas, Вы писали:
V>На абсолютно чистом языке невозможно написать полезную программу, ведь она не сможет ввод-вывод, то бишь ты никогда даже не узнаешь, запущена она или нет.
Программа на абсолютно чистом языке, разумеется, сможет ввод-вывод. Чистое от нечистого вообще не отличаются в плане того, что в них можно, а что нет. Они отличаются тем, что в них явно, а что неявно делается.
V>о ленивости, которая... оп-па, заведомо не должна влиять на семантику.
Ленивость, разумеется, заведомо должна влиять на семантику и влияет. Если бы не влияла — не было бы вообще никакого смысла говорить о нормальном и аппликативном порядках.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
'You may call it "nonsense" if you like, but I'VE heard nonsense, compared with which that would be as sensible as a dictionary!' (c) Lewis Carroll
Здравствуйте, samius, Вы писали:
V>>Она не моя. Законы оптики существует независимо от нас с тобой в частности и от человека в общем. S>В том числе поэтому давай ты не будешь вписывать в законы идентичность получателя фотона
Увы, получить информацию можно только поглотив энергию. Поэтому идентичность никуда не денется. )))
Ведь эту энергию поглотит "кто-то конкретный".
S>>>В быту двери не испускают свет. V>>У меня испускает. Лампочка на звонке прямо на двери. S>Ты добрался в тонкостях до фотонов и тут же перестаешь отличать дверь от лампочки. Толсто.
В итернете ты можешь найти фото дверей, которые одна сплошная лампочка. Что было действительно толсто — так это сравнивать фотон с мячом. Спишем на кривые представления о происходящем...
V>>Да и какая разница, в быту или нет, если наша программа всегда абстракция прямо по определению? Тебе вообще не должно быть важно, сама дверь испускает сигнал или отражает его так, что ты способен расмотреть эту дверь. S>Мне неважно, но именно ты ведь пытаешься натянуть физику на ООП.
Наоборот, я показываю правомочность того, что дверь мне "отвечает" на вопрос. То бишь показываю физический смысл этого явления. Хотя, я ни разу не обязан был этого делать для тебя, т.к. в умозрительной модели я имею право раздать роли обектам как мне удобно. Даже если такое распределение ролей не имеет физического аналога в реальном мире. Просто я ХЗ как тебе втолковать сей очевидный момент, вот и пришлось демонстрировать аналогичное происходящее в реале.
V>>Ты сам разве не видишь, как далеко ты уже пытаешься убежать от банальных, вообще-то, вещей? S>Это ты убегал и зарывался в тонкости. Я лишь наблюдал за этим и подтролливал.
Подтроллировать надо уметь. А у тебя в каждом втором посте — серьезные ошибки.
V>>Необоснованно по абзацу целиком. Но мне бы хотелось твою т.з. насчет концепции "непрерывного генерирования сигналов". S>Необоснован твой абзац с подпиской на фотоны.
Дык, давай аргументы. Твоя необоснованность- она в отсутствии обоснования, если ты забыл смысл этого слова.
S>По поводу концепции "непрерывного генерирования сигналов", то если ты говоришь о фотонах, а не о волне, то ничего непрерывного в той концепции нет.
Любая дискретность происходящего сглаживается физикой/химией колбочек глаза. Уже 100ГЦ человеческий глаз не различает.
S>>>Что бы послать сообщение, нужна идентичность. Подписка — это передача идентичности. Выходит что прежде чем предмет начнет высылать тебе информацию, ты должен передать ему свою идентичность. V>>Опять нет. S>Что нет? Не натягивается?
В таком категоричном виде — нет ес-но. "События" в ООП в виде мультикаста — оно так прижилось фактически сразу. Объект шлет события и не знает кому.
V>>Это отличное ООП, см. мультикаст делегаты. Ведь "адрес" тоже может быть не конкретикой, а абстракцией. Для событий дотнета приемником события является на самом деле мультикаст делегат, то бишь некая "шина", имеющая собственный "адрес". S>Мультикаст делегат является собственно объектом с конкретной идентичностью, и посылает он сообщения объектам с конкретной идентичностью.
Ну дык, вектор фотонов движения — такой же точно конкретный их адрес. А на пути этого "адреса" ты можешь расположить свои рецепторы.
S>Разве что не только объектам. И ничего широковещательного аки в эфире в мултикаст делегате нет. Медиатор тоже не в тему, т.к. имеет конкретный адрес.
Я тебе уже сказал не раз, что есть дарес для фотонов. Хотя, ты и сам должен был знать. Чтобы доставлять фотоны по произвольному адресу, нужны волноводы соотв. радиодиапазона.
V>>Аналогично с т.з. оптики адресом фотонов является вектор их распространения. Проводящее свет пространство в таком случае выступает посредником-средой доставки информации. S>Расскажи теперь как твой глаз подписывается на сообщения от всевозможных векторов, входящих в него.
Тебе начать рассказывать с фокусного расстояния или с еще более ранних азов оптики?
V>>А я предупреждал, что на ООП без проблем можно скатиться к любым подробностям. Причем, за счет абстракций ты этого даже можешь не увидеть в статичном публичном АПИ, хотя это вполне может отразиться в динамике происходящего. Необходимый тебе предел подробностей можно задать через ТЗ. Я лишь показываю, насколько у тебя развязаны руки, если брать ООП. Любые навороты моделирования выходят крайне дешевы... в сравнении с попыткой натянуть на них, например, ФП. S>Я знаю что развязаны, я выступаю против того что ООП естественным образом отражает мир.
Т.е. всё это время был лишь протест против словосочетания "естественным образом"?
Когда такое говорят о технических моментах, то подразумевают, что некий технический момент для неких условий/ограничений/задачи наиболее удобен. S>>>Твои проблемы не являются аргументом в споре.
V>>Являются. На абсолютно чистом языке невозможно написать полезную программу, ведь она не сможет ввод-вывод, то бишь ты никогда даже не узнаешь, запущена она или нет. Это будет фантом, а не программа. )) S>Ты от исходного тезиса отклонился уже на 120 градусов. И напомню, хаскель все еще считается чистым языком общего назначения.
Мало ли что "считается". Ты уже достаточно его знаешь, чтобы понимать как на самом деле. На Хаскеле МОЖНО писать чистые участки кода... это да....
V>>Это от непонимания происходящего, от цепляние за догмы как за соломинки. Зачем ты запрещаешь сам себе ставить мысленные эксперименты? )) Смысл? S>Разве же запрещаю? Я просто не делаю из них очень резкие выводы, как у тебя.
Я кроме "удобства" ещё ни одного вывода не сделал. Остальное — считай разминка для образного мышления и ничего более. Просто я ХЗ почему 10-й пост подряд должен объяснять тебе, что имею право раздавать роли объектам так, как мне, разработчику, удобно. Внося динамику в процесс, увы, удобнее всего наделить дверь "поведением", умением "отвечать" и т.д. Или нам в любом случае придется вводить фиктивный объект, который будет делать это ВМЕСТО двери.
S>А теперь о связи между боксированным представлением и вытеканием хаскеля из СП. Просим.
Т.е. против аналогичного происходящего в случае энергичных вычислений в ФП возражений нет? )) Я так и думал.
А требование босксированого представления само по себе накладывает ограничения. То бишь для программы, генерирующей пользу во времени, ты должен понимать, что обработать такую "последовательность" с конца — неэффективно (в отличие от "последовательностей" на сравниваемом там же С/С++)... Хотя, казалось бы, одна строчка разницы в рекурсивном алгоритме... А всего-то добавилось понимание происходящего и ты уже более адекватен с т.з. инструмента.
V>>Насчет Хаскеля и СП — я ХЗ почему ты там так и не смог ответить аргументированно (и никто не смог), а здесь вспомнил опять. S>Это ты не смог ничего аргументированного. Точнее все твои аргументы про побочные эффекты разнесли на молекулы. Напомню, что тезис твой, и доказывать его тебе. То что на твой взгляд у оппонентов возникли проблемы с контраргументацией не делает твой тезис истинным.
Дословно было сказанно так: "в некотором смысле побочный эфект". Никто на молекулы ничего не разнес. Пару коллег решили что это их зведный час и поделились пониманием побочного эффекта на уровне вики. )) Но это как раз фигня и детсад. А вот то, что ты и еще кто-то (уже не помню) с разбега пытались опротестовать ФАКТ упорядочивания вычислений, но быстро обломались, взяв за труд немного подумать — это уже было чуть интересней.
Ну а остальное уже подытоживал:
В данном же случае речь шла о таком забавном замеченном моменте:
чистая ф-ия -> порядок вычисления аргументов не важен, так?
Для Хаскеля порядок вычисления аргументов важен -> чистая ли ф-ия??? )))
Ну т.е. прикол-оксюморон и ничего больше...
V>>В энергичной манере исполнения ветвление в ФП было бы полностью аналогично происходящему в СП... То бишь твои аргументы были исключительно о ленивости, которая... оп-па, заведомо не должна влиять на семантику. И этот аргумент ты так и не перепрыгнул... И не перепрыгнешь, ес-но. S>Я уже отвечал на это, что дело не только в ленивости, а еще и в отсутствии побочных эффектов. Ленивость здесь лишь снимает необходимость особой формы.
"в некотором смысле побочный эфект" — я назвал упорядочивание вычислений, на которые можно полагаться в программе. Только из-за этого счел возможным проводить параллели м/у таким ФП и СП, бо происходящее аналогично, как бы тебе не хотелось абстрагироваться от этого. Я тебе весьма удачную аналогию про поезд и стрелки приводил, но ты как вегда бегаешь от неудобных аргументов.
V>>Тупл вполне себе тип. А уж АлгТД — не просто тип, а натуральный абстрактный тип, на котором сидит весь хаскелевский рантайм-полиморфизм. S>А что, типы и в частности туплы это теперь прерогатива ООП?
Контракт на методы типа? — ес-но! Это непосредственная вотчина современного ООП. Но ты непременно оспариваешь мой тезис, что парадигмы воруют друг у друга наработки. "Баба Яга против!" во всей красе. )
V>>Кому не нужна? Насколько я вижу программы на хаскеле — экземпляр какой-нить монады (не только IO) вполне себе обеспечивает "рамки" некоего вычислительного процесса. А идентичность — это и есть способ отличить одно от другого, расставить те самые "рамки". S>Что за "экземпляр" монады?
Это такой функциональный объект.
S>Из того что мы можем что-то проэмулировать совсем не следует что мы должны что-то эмулировать.
Дык, а кто тебя спросит, должен ты или нет? Работа с dictionary в ФП именно так и ведется и я тебе лишь демонстрирую, что "протягивая" последовательность смены состояний некоего объекта (например, dictionary) в ФП можно запросто получить все те же самые эффекты, что в мутабельном мире. Какая нафик разница самим этим эффектам, на каком уровне абстракции они возникли?
V>>Это я уже молчу о том, что регистровая память полностью эквивалентна ассоциативной, если за ключ ассоциации взять некий порядковый номер. Как тебе такая изоморфность мутабельной и иммутабельной низлежащей модели? Вот нарисуй на Хаскеле некий dictionary<адрес, объект> и смоделируй на этом dictionary память компьютера c операциями read/write (возвращающими новое состояние "памяти", ес-но). Потом попробуй найти отличия от императивного мира. S>во-первых, отличия на поверхности. Код эмуляции будет чистым.
Вот, за что я издеваюсь на догмами. Речь о конечной программе, а не о "коде эмуляции". Твой "код эмуляции" никого не волнует, волнует конечная генерируемая программой польза, то бишь её побочные эффекты. Конечная программа даже в императиве всегда решается в неких "заготовках" под предметную область, считай, что решение эмулируется на другом языке, чем исходный (некий eDSL, пусть даже в рамках синтаксиса использования библиотечных вещей). Так вот, конечная программа запросто может обладать всеми побочными эффектами, как на императивном языке и защиты от них НЕТ.
S>Во-вторых, в возможности эмуляции одного на другом нет ничего нового со времен тезиса Черча-Тьюринга. Если ты хочешь использовать это как аргумент в пользу происхождения хаскеля от СП, то так же можно будет использовать этот же аргумент в пользу происхождения Паскаля от лямбда счисления.
О чудо, ты наконец попал!
Я уверен — случайно, но ведь попал! В Паскале с рождения присутствует замыкание локальных (вложенных) процедур на контекст вышестоящих. Причем, отменить это поведение нельзя.
Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, samius, Вы писали:
S>>В том числе поэтому давай ты не будешь вписывать в законы идентичность получателя фотона
V>Увы, получить информацию можно только поглотив энергию. Поэтому идентичность никуда не денется. ))) V>Ведь эту энергию поглотит "кто-то конкретный".
Она не то что никуда не девается, она ниоткуда не берется. Испускатель фотона не знает кто его получит.
V>>>У меня испускает. Лампочка на звонке прямо на двери. S>>Ты добрался в тонкостях до фотонов и тут же перестаешь отличать дверь от лампочки. Толсто.
V>В итернете ты можешь найти фото дверей, которые одна сплошная лампочка. Что было действительно толсто — так это сравнивать фотон с мячом. Спишем на кривые представления о происходящем...
Предлагаешь поразговаривать с дверью-лампочкой по фотографии в интернете?
V>>>Да и какая разница, в быту или нет, если наша программа всегда абстракция прямо по определению? Тебе вообще не должно быть важно, сама дверь испускает сигнал или отражает его так, что ты способен расмотреть эту дверь. S>>Мне неважно, но именно ты ведь пытаешься натянуть физику на ООП.
V>Наоборот, я показываю правомочность того, что дверь мне "отвечает" на вопрос. То бишь показываю физический смысл этого явления.
Покажи как вопрос от тебя доходит до двери
V>Хотя, я ни разу не обязан был этого делать для тебя, т.к. в умозрительной модели я имею право раздать роли обектам как мне удобно. Даже если такое распределение ролей не имеет физического аналога в реальном мире. Просто я ХЗ как тебе втолковать сей очевидный момент, вот и пришлось демонстрировать аналогичное происходящее в реале.
Вот я тебе и талдычу о том что аналога в мире нет. Вместо того что бы натягивать реальный мир на ООП, программисты поступают ровно наоборот, только это не всем очевидно. Типа вот если бы дверь была бы как бы компьютером, и мы могли бы ей посылать сообщение, вот было бы круто. Все, дальше выдумывать ничего не надо. Читай Кея.
Только я вижу, что тебя таращит от твоей теории настолько, что ты не пытаешься понять, что тебе пишут в ответ.
S>>Это ты убегал и зарывался в тонкости. Я лишь наблюдал за этим и подтролливал.
V>Подтроллировать надо уметь. А у тебя в каждом втором посте — серьезные ошибки.
А у тебя-то!
V>>>Необоснованно по абзацу целиком. Но мне бы хотелось твою т.з. насчет концепции "непрерывного генерирования сигналов". S>>Необоснован твой абзац с подпиской на фотоны.
V>Дык, давай аргументы. Твоя необоснованность- она в отсутствии обоснования, если ты забыл смысл этого слова.
А не ты мне хотел показать, как близко ООП к рж, но потом написал что на самом деле аналога нет? Давай так, твоя модель — ты и обосновывай ее близость к рж.
S>>По поводу концепции "непрерывного генерирования сигналов", то если ты говоришь о фотонах, а не о волне, то ничего непрерывного в той концепции нет.
V>Любая дискретность происходящего сглаживается физикой/химией колбочек глаза. Уже 100ГЦ человеческий глаз не различает.
А единичный фотон — различает, ага
S>>Что нет? Не натягивается?
V>В таком категоричном виде — нет ес-но. "События" в ООП в виде мультикаста — оно так прижилось фактически сразу. Объект шлет события и не знает кому.
знает кому. Делегату. А тот списку подписчиков. Никаких неизвестностей в ООП нет. См. observer.
S>>Мультикаст делегат является собственно объектом с конкретной идентичностью, и посылает он сообщения объектам с конкретной идентичностью.
V>Ну дык, вектор фотонов движения — такой же точно конкретный их адрес. А на пути этого "адреса" ты можешь расположить свои рецепторы.
Что за на пути адреса? Расскажи мне о том как у рецептора есть свой адрес и как рецептор подписывается на сообщение от вектора.
S>>Разве что не только объектам. И ничего широковещательного аки в эфире в мултикаст делегате нет. Медиатор тоже не в тему, т.к. имеет конкретный адрес.
V>Я тебе уже сказал не раз, что есть дарес для фотонов. Хотя, ты и сам должен был знать. Чтобы доставлять фотоны по произвольному адресу, нужны волноводы соотв. радиодиапазона.
В ООП нет произвольного адреса, есть только конкретные.
S>>Расскажи теперь как твой глаз подписывается на сообщения от всевозможных векторов, входящих в него.
V>Тебе начать рассказывать с фокусного расстояния или с еще более ранних азов оптики?
На твое усмотрение
S>>Я знаю что развязаны, я выступаю против того что ООП естественным образом отражает мир.
V>Т.е. всё это время был лишь протест против словосочетания "естественным образом"?
Да. Жаль что до тебя это доходило так долго. Но боюсь, что еще не совсем дошло.
V>Когда такое говорят о технических моментах, то подразумевают, что некий технический момент для неких условий/ограничений/задачи наиболее удобен.
Походу ты пропустил начало темы. Речь шла о другом.
S>>Ты от исходного тезиса отклонился уже на 120 градусов. И напомню, хаскель все еще считается чистым языком общего назначения.
V>Мало ли что "считается". Ты уже достаточно его знаешь, чтобы понимать как на самом деле. На Хаскеле МОЖНО писать чистые участки кода... это да....
Ты так и не привел ни одного нечистого куска без использования бэкдоров.
S>>Разве же запрещаю? Я просто не делаю из них очень резкие выводы, как у тебя.
V>Я кроме "удобства" ещё ни одного вывода не сделал. Остальное — считай разминка для образного мышления и ничего более. Просто я ХЗ почему 10-й пост подряд должен объяснять тебе, что имею право раздавать роли объектам так, как мне, разработчику, удобно. Внося динамику в процесс, увы, удобнее всего наделить дверь "поведением", умением "отвечать" и т.д. Или нам в любом случае придется вводить фиктивный объект, который будет делать это ВМЕСТО двери.
А я тебе 10-ый пост объясняю что я не оспариваю твоего права раздавать роли как угодно. Я оспариваю то утверждение, что как угодно разданные роли естественным образом соответствуют рж.
S>>А теперь о связи между боксированным представлением и вытеканием хаскеля из СП. Просим.
V>Т.е. против аналогичного происходящего в случае энергичных вычислений в ФП возражений нет? )) Я так и думал.
Ну ты же высосал из пальца то что возражений нет. Есть возражения. Энергичные вычисления тоже могут быть чистыми. Разница лишь в том, что для вычислимости на энергичных вычислений нужна особая форма if-а.
V>А требование босксированого представления само по себе накладывает ограничения. То бишь для программы, генерирующей пользу во времени, ты должен понимать, что обработать такую "последовательность" с конца — неэффективно (в отличие от "последовательностей" на сравниваемом там же С/С++)... Хотя, казалось бы, одна строчка разницы в рекурсивном алгоритме... А всего-то добавилось понимание происходящего и ты уже более адекватен с т.з. инструмента.
В теореме об СП нет ни строчки об эффективности. Поэтому отсыл к эффективности в качестве аргумента не принимается.
V>>>Насчет Хаскеля и СП — я ХЗ почему ты там так и не смог ответить аргументированно (и никто не смог), а здесь вспомнил опять. S>>Это ты не смог ничего аргументированного. Точнее все твои аргументы про побочные эффекты разнесли на молекулы. Напомню, что тезис твой, и доказывать его тебе. То что на твой взгляд у оппонентов возникли проблемы с контраргументацией не делает твой тезис истинным.
V>Дословно было сказанно так: "в некотором смысле побочный эфект". Никто на молекулы ничего не разнес. Пару коллег решили что это их зведный час и поделились пониманием побочного эффекта на уровне вики. )) Но это как раз фигня и детсад. А вот то, что ты и еще кто-то (уже не помню) с разбега пытались опротестовать ФАКТ упорядочивания вычислений, но быстро обломались, взяв за труд немного подумать — это уже было чуть интересней.
Факт упорядочивания ЧИСТЫХ вычислений в СП никому не интересен. Они упорядочивают побочные эффекты. И не в некотором смысле побочные, а в самом прямом.
V>Ну а остальное уже подытоживал: V>
V>чистая ф-ия -> порядок вычисления аргументов не важен, так?
Чистота функции в общем случае не кореллирует с порядком вычисления аргументов. Т.е. легко показать чистую функцию
int add(int x, int y) { return x + y; }
, для которой порядок вычисления аргументов будет играть роль.
S>>Я уже отвечал на это, что дело не только в ленивости, а еще и в отсутствии побочных эффектов. Ленивость здесь лишь снимает необходимость особой формы.
V>"в некотором смысле побочный эфект" — я назвал упорядочивание вычислений, на которые можно полагаться в программе. Только из-за этого счел возможным проводить параллели м/у таким ФП и СП, бо происходящее аналогично, как бы тебе не хотелось абстрагироваться от этого. Я тебе весьма удачную аналогию про поезд и стрелки приводил, но ты как вегда бегаешь от неудобных аргументов.
Упорядочивание вычислений не является побочным эффектом в общеизвестном смысле. А то что ты используешь некоторые смыслы и тебя не могут понять, то это сугубо твои тараканы.
S>>А что, типы и в частности туплы это теперь прерогатива ООП?
V>Контракт на методы типа? — ес-но! Это непосредственная вотчина современного ООП. Но ты непременно оспариваешь мой тезис, что парадигмы воруют друг у друга наработки. "Баба Яга против!" во всей красе. )
Тебе придется убедить меня что туплы/стракты с функциями/указателями на функции не использовались до засилия ООП.
S>>Что за "экземпляр" монады?
V>Это такой функциональный объект.
Что за функциональный объект?
S>>Из того что мы можем что-то проэмулировать совсем не следует что мы должны что-то эмулировать.
V>Дык, а кто тебя спросит, должен ты или нет? Работа с dictionary в ФП именно так и ведется и я тебе лишь демонстрирую, что "протягивая" последовательность смены состояний некоего объекта (например, dictionary) в ФП можно запросто получить все те же самые эффекты, что в мутабельном мире. Какая нафик разница самим этим эффектам, на каком уровне абстракции они возникли?
Ты ответил на какой-то шум в своей голове, а не на мое утверждение.
V>>>Это я уже молчу о том, что регистровая память полностью эквивалентна ассоциативной, если за ключ ассоциации взять некий порядковый номер. Как тебе такая изоморфность мутабельной и иммутабельной низлежащей модели? Вот нарисуй на Хаскеле некий dictionary<адрес, объект> и смоделируй на этом dictionary память компьютера c операциями read/write (возвращающими новое состояние "памяти", ес-но). Потом попробуй найти отличия от императивного мира. S>>во-первых, отличия на поверхности. Код эмуляции будет чистым.
V>Вот, за что я издеваюсь на догмами. Речь о конечной программе, а не о "коде эмуляции". Твой "код эмуляции" никого не волнует, волнует конечная генерируемая программой польза, то бишь её побочные эффекты. Конечная программа даже в императиве всегда решается в неких "заготовках" под предметную область, считай, что решение эмулируется на другом языке, чем исходный (некий eDSL, пусть даже в рамках синтаксиса использования библиотечных вещей). Так вот, конечная программа запросто может обладать всеми побочными эффектами, как на императивном языке и защиты от них НЕТ.
Если ты поставил себе цель воплотить все необходимые побочные эффекты в конечной программе, то на что ты жалуешься? И видишь ли, меня интересует не только сама конечная программа.
S>>Во-вторых, в возможности эмуляции одного на другом нет ничего нового со времен тезиса Черча-Тьюринга. Если ты хочешь использовать это как аргумент в пользу происхождения хаскеля от СП, то так же можно будет использовать этот же аргумент в пользу происхождения Паскаля от лямбда счисления.
V>О чудо, ты наконец попал! V>Я уверен — случайно, но ведь попал! В Паскале с рождения присутствует замыкание локальных (вложенных) процедур на контекст вышестоящих. Причем, отменить это поведение нельзя.
Вообще-то я рассчитывал что тебя возмутит идея о происхождении паскаля от лямбда счисления. Но раз она тебя не возмутила и ты воспринял ее с воодушевлением, то пора завязывать. Я лишь хотел сказать что возможность эмуляции не доказывает родство более близкое чем вычислительная эквивалентность ЛС и МТ.
Re[41]: Как мало людей понимает ООП так же, как это понимаю великий Я...
> V>>Да и какая разница, в быту или нет, если наша программа всегда абстракция прямо по определению? Тебе вообще не должно быть важно, сама дверь испускает сигнал или отражает его так, что ты способен расмотреть эту дверь. > S>Мне неважно, но именно ты ведь пытаешься натянуть физику на ООП. > > Наоборот, я показываю правомочность того, что дверь мне "отвечает" на вопрос. То бишь показываю физический смысл этого явления. Хотя, я ни разу не обязан был этого делать для тебя, т.к. в умозрительной модели я имею право раздать роли обектам как мне удобно. Даже если такое распределение ролей не имеет физического аналога в реальном мире. Просто я ХЗ как тебе втолковать сей очевидный момент, вот и пришлось демонстрировать аналогичное происходящее в реале.
Ты эта, как у женщин извечный вопрос про моду, как бы так одеться, что бы раздеться?
Сам же признаешь, что смоделировать реальность невозможно, ты ни разу не моделируешь реальность, а моделируешь свои мысленные абстракции да еще и раздавая роли как тебе удобно, то есть не основываясь на реальности. Да еще и моделируешь не свои абстракции, а придуманные двести лет назад бородатыми мужиками (как бы научные представления), которые ты прочитал в книге или услышал на лекции.
Ну давайте все вместо не связанной с реалом абстракции bool Дверь.Открыта будем подписываться векторами на фотоны, что бы определить открыта ли она. Представляю как ты там программируешь
Попытка "моделировать реальный мир", это костыль для людей не знающих или не способных найти эффективное решение задачи. Если ты не можешь создать свою абстрактную модель направленную на решение задачи, конечно ты будешь пытаться что-то там в своем мозгу "моделировать". Если не знаешь чисел и математики, то считать ты вынужден моделируя реальный мир — загибая пальцы.
Здравствуйте, vdimas, Вы писали:
V>На Хаскеле МОЖНО писать чистые участки кода... это да....
Да, и весь код из таких участков и состоит.
V>Т.е. против аналогичного происходящего в случае энергичных вычислений в ФП возражений нет? ))
Возражение простое, ваша посылка "все дело в ленивости" — неверная. ну и все ваши выводы из неверной посылки, следовательно, тоже ошибочны.
V>чистая ф-ия -> порядок вычисления аргументов не важен, так?
Нет, не так.
V>Ну т.е. прикол-оксюморон и ничего больше...
Ну, неправильная посылка -> абсурдный вывод. Все как обычно.
V>"в некотором смысле побочный эфект" — я назвал упорядочивание вычислений, на которые можно полагаться в программе.
В императивных языках — упорядочивание неявное. В чистых ФЯ — явное. Вот такая вот разница.
V> Только из-за этого счел возможным проводить параллели м/у таким ФП и СП, бо происходящее аналогично
Происходящее в чистых ФЯ и императивных языках настолько неаналогично, что никакий пользы из проведения аналогий нельзя извлечь вообще. Чем дальше вы проводите аналогию — тем серьезнее проблемы с пониманием.
S>>Что за "экземпляр" монады? V>Это такой функциональный объект.
Это не ответ на вопрос.
V>волнует конечная генерируемая программой польза, то бишь её побочные эффекты.
Опять же — неверная посылка. "Генерируемая программой польза" — это не "побочный эффект", а эффект самый что ни на есть "прямой" — результат.
V>и защиты от них НЕТ.
Наоборот — защита есть. Ради этого все и затевалось.
... << RSDN@Home 1.2.0 alpha 4 rev. 1476>>
'You may call it "nonsense" if you like, but I'VE heard nonsense, compared with which that would be as sensible as a dictionary!' (c) Lewis Carroll
Здравствуйте, vdimas, Вы писали:
V>О чудо, ты наконец попал! V>Я уверен — случайно, но ведь попал! В Паскале с рождения присутствует замыкание локальных (вложенных) процедур на контекст вышестоящих. Причем, отменить это поведение нельзя.
Это зачатки функциональщины, а ты записываешь это в процедурное.
Здравствуйте, vdimas, Вы писали:
V>О чудо, ты наконец попал! V>Я уверен — случайно, но ведь попал! В Паскале с рождения присутствует замыкание локальных (вложенных) процедур на контекст вышестоящих. Причем, отменить это поведение нельзя.
А вот если поковыряться в википедии, то выяснится что термин "замыкание" при упоминаниии вложенных процедур паскаля (с его рождения) ты употребил совершенно напрасно. Говорить о замыканиях в паскале можно лишь с поздних версий. И то это будет уже не паскаль, а делфи.
Здравствуйте, samius, Вы писали:
S>А вот если поковыряться в википедии, то выяснится что термин "замыкание" при упоминаниии вложенных процедур паскаля (с его рождения) ты употребил совершенно напрасно. Говорить о замыканиях в паскале можно лишь с поздних версий. И то это будет уже не паскаль, а делфи.
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, samius, Вы писали:
S>>А вот если поковыряться в википедии, то выяснится что термин "замыкание" при упоминаниии вложенных процедур паскаля (с его рождения) ты употребил совершенно напрасно. Говорить о замыканиях в паскале можно лишь с поздних версий. И то это будет уже не паскаль, а делфи.
I>Турбопаскаль уже считать дельфи или еще нет ?
Вообще-то нет. Да и в делфи замыкания появились лишь в 2009-м. Так что без разницы, чем ты будешь считать турбопаскаль.