<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3812365</guid>
        <pubDate>Fri, 11 Oct 2019 18:43:03 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3812365</link>
        <description><![CDATA[JoeUser: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810411'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T16:45:15+03:00">14.09.19, 13:45</time></span><div class='quote '>В TurboVision у сообщений не было адресатов.</div></div><br>
Кстати да ... Я знаю, что уже давно ведется критика IP v.4 ... типа прямого соединения, бродкастов и мальтикастов недостаточно (или не так они реализованы). Ну екарный бабай&#33;&#33;&#33;&#33;1111 В языках а-ля более-менее высокого уровня - нет четкой позиции (сказать &quot;парадигмы&quot;) и ее реализации - &quot;А КАК ПРАВИЛЬНО&quot;. Как &quot;более ВЫГОДНО по ресурсам, по скорости&quot;. Или я отстал от жысти?&#33;]]></description>
        <author>JoeUser</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810411</guid>
        <pubDate>Sat, 14 Sep 2019 13:45:15 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810411</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810404'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T12:52:06+00:00">14.09.19, 12:52</time></span><div class='quote '>Так деспетчеризация же по имени идти должна, как не принципиально? Дальше идет поиск метода(сам объект/класс и далее по предкам). Нет?</div></div>В TurboVision у сообщений не было адресатов. Там все объекты объединялись в единую иерархию (это совсем не та иерархия, которая определяет отношения наследования), а события просто кидались в неё, и обрабатывал их тот, кто хотел. Может быть и никто. Может быть и многие.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810405</guid>
        <pubDate>Sat, 14 Sep 2019 12:58:52 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810405</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810404'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T12:52:06+00:00">14.09.19, 12:52</time></span><div class='quote '>Тогда я совсем не понимаю, при чем тут алгебраические типы данных </div></div>Ладно, забей, так как у нас некие разногласия в вопросе имен сообщений.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810404'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T12:52:06+00:00">14.09.19, 12:52</time></span><div class='quote '>Так деспетчеризация же по имени идти должна, как не принципиально? Дальше идет поиск метода(сам объект/класс и далее по предкам). Нет?</div></div>В в SmallTalk так, да. Но как я понял это не обязательно.<br>
Кстати, а можно ли в SmallTalk при отправке сообщения выбрать его имя динамически в рантайме? А то у меня закралось смутное сомнение, что нельзя :)<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810404'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T12:52:06+00:00">14.09.19, 12:52</time></span><div class='quote '>Так а что идентифицирует сообщение?</div></div>Его содержимое, вестимо. Почему идентификатор сообщения не может быть его частью? Он не только может, он и есть часть сообщения. :)]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810404</guid>
        <pubDate>Sat, 14 Sep 2019 12:52:06 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810404</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810399'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T12:33:24+00:00">14.09.19, 12:33</time></span><div class='quote '>Причем тут pattern matching? Я о нем вообше не думал, замени erlang на JavaScript или PHP смысл не поменяется.</div></div><br>
Тогда я совсем не понимаю, при чем тут алгебраические типы данных :) <br>
<br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Ну добавь в сообщение строку с именем, будет тебе имя сообщения. Это не принципиально вообще.</div></div><br>
Так деспетчеризация же по имени идти должна, как не принципиально? Дальше идет поиск метода(сам объект/класс и далее по предкам). Нет?<br>
<br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Даже в определении ООП Алана Кея, ЕМНИП, нет ничего об именах сообщений.</div></div><br>
Так а что идентифицирует сообщение?]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810399</guid>
        <pubDate>Sat, 14 Sep 2019 12:33:24 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810399</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810390'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T10:37:11+00:00">14.09.19, 10:37</time></span><div class='quote '>Мне кажется, тебя просто сбивает с толку pattern matching. Но фиг с ним.</div></div>Причем тут pattern matching? Я о нем вообше не думал, замени erlang на JavaScript или PHP смысл не поменяется.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810390'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T10:37:11+00:00">14.09.19, 10:37</time></span><div class='quote '>А где имена сообщений-то? Мы же про ООП говорим? Диспетчеризация не по имени разве должна быть?</div></div>Ну добавь в сообщение строку с именем, будет тебе имя сообщения. Это не принципиально вообще. Даже в определении ООП Алана Кея, ЕМНИП, нет ничего об именах сообщений.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810390</guid>
        <pubDate>Sat, 14 Sep 2019 10:37:11 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810390</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810386'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T10:14:07+00:00">14.09.19, 10:14</time></span><div class='quote '>Я рассуждаю в более узком смысле. Имеются в виду типы встроенные в язык. Допустим любая переменная в erlang имеет алгебраический тип состоящий из следующих типов: атом, функция, список, целое и так далее.</div></div><br>
Мне кажется, тебя просто сбивает с толку pattern matching. Но фиг с ним.<br>
<br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Объект foo, которому мы посылаем разные сообщения (в функции main) и он по разному реагирует на эти сообщения.</div></div><br>
А где имена сообщений-то? Мы же про ООП говорим? Диспетчеризация не по имени разве должна быть?<br>
Кстати, ты слышал про метод doesNotUnderstand в smalltalk?]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810386</guid>
        <pubDate>Sat, 14 Sep 2019 10:14:07 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810386</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810383'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T10:06:50+00:00">14.09.19, 10:06</time></span><div class='quote '>Эм. Нет. Тип может быть создан во время выполнения, например. Или типа вообще может не быть как сущности в языке(типа у нас есть только объекты).<br>
Не знаю, что ты подразумеваешь под алгебраическим типом данных, но я использую классическое определение - тип-сумма из типов-произведений, имеющая набор конструкторов, селекторов, частей и предикатов. А ты о чем?</div></div>Я рассуждаю в более узком смысле. Имеются в виду типы встроенные в язык. Допустим любая переменная в erlang имеет алгебраический тип состоящий из следующих типов: атом, функция, список, целое и так далее.<br>
Можно для облегчения взаимопонимания сузить термин &quot;алгебраический тип&quot; до &quot;<a class='tag-url' href='https://en.wikipedia.org/wiki/Tagged_union' target='_blank'>tagged union</a>&quot;.<br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-14T10:15:12+00:00">14.09.19, 10:15</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810383'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T10:06:50+00:00">14.09.19, 10:06</time></span><div class='quote '>Не понял, к чему тут твой пример? Где разные объекты и где разная реакция на разные сообщения, в том числе и неизвестные?</div></div>Объект foo, которому мы посылаем разные сообщения (в функции main) и он по разному реагирует на эти сообщения. Там по ссылке, в левом верхнем углу есть кнопка <strong class='tag-b'>Run</strong>, покажет реакцию объекта на разные сообщения.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810383</guid>
        <pubDate>Sat, 14 Sep 2019 10:06:50 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810383</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810380'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T09:56:24+00:00">14.09.19, 09:56</time></span><div class='quote '>В любом динамически типизированном языке переменную можно представить как переменную алгебраического типа, состоящего из конечного числа типов поддерживаемых этим языком.</div></div><br>
Эм. Нет. Тип может быть создан во время выполнения, например. Или типа вообще может не быть как сущности в языке(типа у нас есть только объекты).<br>
Не знаю, что ты подразумеваешь под алгебраическим типом данных, но я использую классическое определение - тип-сумма из типов-произведений, имеющая набор конструкторов, селекторов, частей и предикатов. А ты о чем? <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-14T10:09:47+00:00">14.09.19, 10:09</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810380'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T09:56:24+00:00">14.09.19, 09:56</time></span><div class='quote '>Аналогично, мы можем в том же D создать аналогичный алгебраический тип и передавать объекту сообщения этого типа (вся диспечеризация в рантайме)</div></div><br>
Не понял, к чему тут твой пример? Где разные объекты и где разная реакция на разные сообщения, в том числе и неизвестные?]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810380</guid>
        <pubDate>Sat, 14 Sep 2019 09:56:24 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810380</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810375'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T08:09:55+00:00">14.09.19, 08:09</time></span><div class='quote '>Просто это или неверно, или ты не раскрыл мысль.</div></div>Что тут неверного? В любом динамически типизированном языке переменную можно представить как переменную алгебраического типа, состоящего из конечного числа типов поддерживаемых этим языком.<br>
Допустим в Erlang мы можем отправить сообщение, которое может иметь один из конечного числа типов. Аналогично, мы можем в том же D создать аналогичный алгебраический тип и передавать объекту сообщения этого типа (вся диспечеризация в рантайме):<br>
<a class='tag-url' href='https://run.dlang.io/is/trH1nw' target='_blank'>https://run.dlang.io/is/trH1nw</a><br>
<div class="tag-spoiler spoiler closed"><div class="spoiler_header" onclick="openCloseParent(this)">Скрытый текст</div><div class="body"><br>
Зацените, насколько метапрограмминг в D мощнее и удобнее плюсового.<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">import std.stdio;</div><div class="code_line">import std.variant;</div><div class="code_line">&nbsp;</div><div class="code_line">alias Message = Algebraic!(string, int, This[]);</div><div class="code_line">&nbsp;</div><div class="code_line">auto send(T, M)(T obj, M message) { return obj.dispatch(Message(message)); }</div><div class="code_line">auto send(T, MS...)(T obj, MS messages) if(MS.length &#62; 1) {</div><div class="code_line">&nbsp;&nbsp; &nbsp;Message[] msg;</div><div class="code_line">&nbsp;&nbsp; &nbsp;foreach(m; messages) msg ~= Message(m);</div><div class="code_line">&nbsp;&nbsp; &nbsp;obj.send(msg);</div><div class="code_line">}</div><div class="code_line">&nbsp;</div><div class="code_line">class Foo {</div><div class="code_line">&nbsp;&nbsp; &nbsp;void dispatch(Message msg) {</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;msg.visit!(</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;(string x) =&#62; writefln(&quot;string: %s&quot;, x),</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;(int x) =&#62; writefln(&quot;integer: %s&quot;, x),</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;x =&#62; writefln(&quot;unsupported: %s&quot;, x)</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;);</div><div class="code_line">&nbsp;&nbsp; &nbsp;}</div><div class="code_line">}</div><div class="code_line">&nbsp;</div><div class="code_line">void main() {</div><div class="code_line">&nbsp;&nbsp; &nbsp;Foo foo = new Foo;</div><div class="code_line">&nbsp;&nbsp; &nbsp;foo.send(&quot;hello&quot;);</div><div class="code_line">&nbsp;&nbsp; &nbsp;foo.send(123);</div><div class="code_line">&nbsp;&nbsp; &nbsp;foo.send(&quot;hello&quot;, 123);</div><div class="code_line">}</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script></div></div><br>
Правда, подозреваю, что <strong class='tag-b'>korvin</strong> скажет, что я реализовал message-passing поверх обычных методов. :)]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810375</guid>
        <pubDate>Sat, 14 Sep 2019 08:09:55 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810375</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810374'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T08:08:08+00:00">14.09.19, 08:08</time></span><div class='quote '><div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810372'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T06:47:52+00:00">14.09.19, 06:47</time></span><div class='quote '>Что ты имеешь в виду?</div></div><br>
Что именно тебе не понятно в этом предложении?</div></div><br>
Просто это или неверно, или ты не раскрыл мысль.]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810374</guid>
        <pubDate>Sat, 14 Sep 2019 08:08:08 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810374</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810372'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T06:47:52+00:00">14.09.19, 06:47</time></span><div class='quote '>Что ты имеешь в виду?</div></div><br>
Что именно тебе не понятно в этом предложении?]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810372</guid>
        <pubDate>Sat, 14 Sep 2019 06:47:52 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810372</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810370'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-14T05:36:47+00:00">14.09.19, 05:36</time></span><div class='quote '>Напомню, что динамический тип данных - это суть алгебраический тип данных</div></div><br>
Что ты имеешь в виду?]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810370</guid>
        <pubDate>Sat, 14 Sep 2019 05:36:47 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810370</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810318'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>korvin &#064; <time class="tag-quote__quoted-time" datetime="2019-09-13T22:13:19+00:00">13.09.19, 22:13</time></span><div class='quote '>Каким образом это может разруливаться в compile-time, если сообщение можно сформировать в runtime?</div></div>Ну язык-то ститически типизирован. Там все известно в compile-time. Ну и кто вообще сказал, что методы должны быть разные? Пусть будет один единственный метод (например, send) принимающий строку. Все. Получай произвольные сообщения, и принимай решения в зависимости от этих сообщений. Напомню, что динамический тип данных - это суть алгебраический тип данных, который поддерживается очень многими статически типизированными языками, включая C++ (Boost.Variant) и D (std.variant).<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810318'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>korvin &#064; <time class="tag-quote__quoted-time" datetime="2019-09-13T22:13:19+00:00">13.09.19, 22:13</time></span><div class='quote '>Это и есть отправка сообщения, а не вызов метода.</div></div>По сути вызывается определенный метод-диспетчер, которому передается название вызываемого метода и его аргументы. То есть это все равно что вызвать dispatch(string name, string param). То есть в конечном итоге - это все равно вызов метода.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810318</guid>
        <pubDate>Fri, 13 Sep 2019 22:13:19 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810318</link>
        <description><![CDATA[korvin: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810317'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-13T21:47:43+00:00">13.09.19, 21:47</time></span><div class='quote '>В D тоже есть возможность создать объект для которого можно вызвать любой метод. :) Правда все разруливается в compile-time.</div></div><br>
Каким образом это может разруливаться в compile-time, если сообщение можно сформировать в runtime?<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810317'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-13T21:47:43+00:00">13.09.19, 21:47</time></span><div class='quote '>Но можно взять Ruby, Там тоже можно любой метод для объекта вызвать и объект может сам решать, что ему делать с этим методом. И это уже в run-time. ЕМНИП даже похапе и жабаскрипт так умеют. Тоже мне киллер-фича. :lol:<br>
Так что неубедительно. </div></div><br>
Это и есть отправка сообщения, а не вызов метода. Практически все динамически-типизированные языки реализуют message-passing, а не virtual-method-invocation. Разница в том, что первое реализуется рантаймом, второе — компилятором. Есть, конечно и смешанные варианты: статически-типизированные языки с рефлексией (та же Java), но делается это всё там через адовую жопу.]]></description>
        <author>korvin</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810317</guid>
        <pubDate>Fri, 13 Sep 2019 21:47:43 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810317</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3810314'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>korvin &#064; <time class="tag-quote__quoted-time" datetime="2019-09-13T20:43:24+00:00">13.09.19, 20:43</time></span><div class='quote '>Вот тут чуть подробней про разницу сообщений и методов. По сути это разница между динамической и статической типизацией.</div></div>В D тоже есть возможность создать объект для которого можно вызвать любой метод. :) Правда все разруливается в compile-time.<br>
Но можно взять Ruby, Там тоже можно любой метод для объекта вызвать и объект может сам решать, что ему делать с этим методом. И это уже в run-time. ЕМНИП даже похапе и жабаскрипт так умеют. Тоже мне киллер-фича.  :lol: <br>
Так что неубедительно.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810314</guid>
        <pubDate>Fri, 13 Sep 2019 20:43:24 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3810314</link>
        <description><![CDATA[korvin: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809551'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T22:15:16+00:00">06.09.19, 22:15</time></span><div class='quote '>то какая принципиальная разница между отправкой сообщения и вызовом функции?</div></div><br>
Ну, некоторая есть: сообщение — тоже объект, и объект, которому передано сообщение может по-разному реагировать на «неподдерживаемое сообщение». В случае с вызовом методов и VMT ты не можешь вызвать произвольный метод на любом объекте. Реакция на неподдерживаемое сообщение может быть разной, например, знакомый рассказывал, что в одном проекте возможность перехвата и обработки неподдерживаемого сообщения в Ruby использовалась для динамического формирования config-объекта, который фактически читал свои «свойства» из файла.<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809564'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T07:00:42+00:00">07.09.19, 07:00</time></span><div class='quote '>Говорят в Smalltalk то что внешне выглядит как отправка сообщений внутри сделано обычными вызовами.</div></div><br>
Не совсем. Там есть один «метод» — dispatch, остальное ООП реализовано через сообщения поверх него. <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-13T20:45:54+00:00">13.09.19, 20:45</time></span></span><br>
Вот <a class='tag-url' href='https://stackoverflow.com/a/3562383' target='_blank'>тут</a> чуть подробней про разницу сообщений и методов. По сути это разница между динамической и статической типизацией.]]></description>
        <author>korvin</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809674</guid>
        <pubDate>Sun, 08 Sep 2019 16:20:22 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809674</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809598'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T15:51:52+00:00">07.09.19, 15:51</time></span><div class='quote '>Если &quot;создатель&quot; термина ООП критикует некоторые из его &quot;инкарнаций&quot; идеологии (его идеологии&#33;&#33;&#33;) ООП, то он имеет на это полное право. Не нравится - форкай&#33; Только не называй это уже ООП, называй, к примеру, ООПQ. Никто и лишнего слова не скажет&#33;</div></div>А я разве не сказал, что наш доблестный фуллстековый функциональник перевирает цитаты, выдёргивая их из контекста? Он критиковал-то не языковые ООП-архитектуры, а неправильное их пользование программерами. Собственно, функциональный фуллстекщик как раз на сие и напоролся, так что цитата ровно о нём самом, но он при этом умудрился перевернуть её на 180°.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809607</guid>
        <pubDate>Sat, 07 Sep 2019 18:46:16 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809607</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809601'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T16:19:35+00:00">07.09.19, 16:19</time></span><div class='quote '>Мы говорим о идиоме, отвязанной от реализации. <br>
Просто когда возникла такая идея.</div></div><br>
Я и говорю, что это спорно. Симула многими считается первым языком с поддержкой ООП, при этом Кэй не имеет к нему никакого отношения. То, что он придумал термин, не делает его создателем концепции, которая тогда, судя по всему, витала в воздухе. Его взгляд, соответственно, лишь один из возможных.<br>
Про C++ я упомянул лишь в контексте, в котором было написано мною процитированное.]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809601</guid>
        <pubDate>Sat, 07 Sep 2019 16:19:35 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809601</link>
        <description><![CDATA[JoeUser: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809600'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T16:10:16+00:00">07.09.19, 16:10</time></span><div class='quote '>На самом деле это спорный вопрос. C++ вдохновлялся языком simula</div></div><br>
C++ - это не ООП&#33; <br>
Мы говорим о идиоме, отвязанной от реализации. <br>
Просто когда возникла такая идея.]]></description>
        <author>JoeUser</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809600</guid>
        <pubDate>Sat, 07 Sep 2019 16:10:16 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809600</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809598'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T15:51:52+00:00">07.09.19, 15:51</time></span><div class='quote '>Если &quot;создатель&quot; термина ООП</div></div><br>
На самом деле это спорный вопрос. C++ вдохновлялся языком simula 67(в том году и появился). Алан Кэй не имеет к нему никакого отношения. <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-07T16:12:32+00:00">07.09.19, 16:12</time></span></span><br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Первым языком программирования, в котором были предложены основные понятия, впоследствии сложившиеся в парадигму, была Симула, но термин «объектная ориентированность» не использовался в контексте использования этого языка. В момент его появления в 1967 году в нём были предложены революционные идеи: объекты, классы, виртуальные методы и др.</div></div>]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809598</guid>
        <pubDate>Sat, 07 Sep 2019 15:51:52 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809598</link>
        <description><![CDATA[JoeUser: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809591'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T11:54:17+00:00">07.09.19, 11:54</time></span><div class='quote '>Отсылка в статье конкретно к Эрлангу не имеет отношения к общему принципу взаимодействия объектов.</div></div><br>
&quot;Остап Ибрагимович, Вы же знаете как я Вас уважаю...&quot; (С)<br>
<br>
<strong class='tag-b'>Qraizer</strong>, но ты неправ&#33; Если &quot;создатель&quot; термина ООП критикует некоторые из его &quot;инкарнаций&quot; идеологии (его идеологии&#33;&#33;&#33;) ООП, то он имеет на это полное право. Не нравится - форкай&#33; Только не называй это уже ООП, называй, к примеру, ООПQ. Никто и лишнего слова не скажет&#33;<br>
<br>
Ну а по поводу &quot;обмена сообщений&quot; ... Ну для механизма исключений таки ввели ключевое слово &quot;throw&quot;. Замечу, не функцию, не метод - а именно ключевое слово. Это собственность ЯП. Все зависимости и инварианты на столе.<br>
<br>
Хотите изначального ООП в разрезе изначальных пожелалок автора сей идеомы - реализуйте в языке&#33; Сделайте ключевыми словами, к примеру, &quot;send&quot;, &quot;listen&quot;, &quot;subscribe&quot;, &quot;unsubscribe&quot; &amp;etc. Обеспечьте функционал, и только тогда поговорим о чистом ООП без личных форков. И да ... ИМХО.]]></description>
        <author>JoeUser</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809591</guid>
        <pubDate>Sat, 07 Sep 2019 11:54:17 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809591</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809546'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T21:29:29+00:00">06.09.19, 21:29</time></span><div class='quote '>Так как в изначальной статье была, кажется, отсылка к эрлангу и его сообщениям, то не понимаешь как раз ты.</div></div>Отсылка в статье конкретно к Эрлангу не имеет отношения к общему принципу взаимодействия объектов. Как объектная модель Плюсов является лишь одной из возможных, так и Эрланг реализует механизм одним из возможных способов. Фуллстекщик по ходу просто проникся идеей Эрганга и вполне имел на это право, мне вон тоже объектная модель Плюсов гораздо симпатичнее Дельфёвой, ВБшной или там Джавной, но вот зачем он распространил одну из возможных реализаций на всю парадигму, это надо у него спросить.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809566</guid>
        <pubDate>Sat, 07 Sep 2019 07:40:58 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809566</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809564'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T07:00:42+00:00">07.09.19, 07:00</time></span><div class='quote '>Это все детали реализации. Говорят в Smalltalk то что внешне выглядит как отправка сообщений внутри сделано обычными вызовами. :)</div></div><br>
Вот как раз то, как реализована посылка/обработка сообщений - действительно деталь реализации. Но во многих языках торчит уже реализация - вызов методов. Т.е. ты не сможешь реализовать в рамках стандарта крестовое ООП иначе, например.]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809565</guid>
        <pubDate>Sat, 07 Sep 2019 07:16:32 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809565</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809564'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T07:00:42+00:00">07.09.19, 07:00</time></span><div class='quote '>Ну это на самом низком уровне. Голый процесс вряд-ли можно назвать объектом. А вот gen_server уже вполне</div></div><br>
Это такой же низкий уровень, как и вызов метода какого-то объекта - есть объект, вызвали метод. Есть процесс - послали сообщение. И вызов метода, и посыл сообщения - это средства языка :-? А gen_server это здоровенный кусок кода, который кто-то написал за нас, и там может быть все, что угодно. В жабе - как обратный пример&#33; - воодушевившись примером эрланга сваяли некую Akka, где попытались повторить его акторную модель. Но не будем же мы говорить после этого, что в java есть посылка сообщений? :-? Получилось у них, насколько я знаю, не очень, если что...<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809564'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T07:00:42+00:00">07.09.19, 07:00</time></span><div class='quote '>а там для отправки уже нужно делать call или cast</div></div><br>
Только синхронная посылка сообщений там сделана, само-собой, через посылку двух асинхронных :)<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809564'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T07:00:42+00:00">07.09.19, 07:00</time></span><div class='quote '>call так вообще очень сильно похож на обычный вызов метода объекта.</div></div><br>
Именно, что только похож, поскольку под капотом это все то же асинхронное сообщение, и подразумеваемый контракт, что ответное сообщение, которое будет когда-то послано, будет содержать id переданный в запросе, и только благодаря этому id процесс ждущий ответ сможет этот ответ отличить от всех других сообщений. Сравни с адресом возврата на стеке :)<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809564'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T07:00:42+00:00">07.09.19, 07:00</time></span><div class='quote '>Это все детали реализации.</div></div><br>
Это основа на которой все работает, и от нее никуда не деться. Сделать похоже на синхронный вызов - да, можно, но чуть ковырнуть, и уже все совсем не так :)<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809564'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T07:00:42+00:00">07.09.19, 07:00</time></span><div class='quote '>Говорят в Smalltalk то что внешне выглядит как отправка сообщений внутри сделано обычными вызовами. </div></div><br>
На хабре об это кучу копий сломали, и если я все понял правильно, то смоллтоке все же именно вызовы методов. <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-07T07:23:07+00:00">07.09.19, 07:23</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809564'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T07:00:42+00:00">07.09.19, 07:00</time></span><div class='quote '>Походу эта дискуссия скоро перейдет в плоскость философии. </div></div><br>
Может оно и не плохо? :D]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809564</guid>
        <pubDate>Sat, 07 Sep 2019 07:00:42 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809564</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809562'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T06:46:50+00:00">07.09.19, 06:46</time></span><div class='quote '>Вообще-то &#39;&#33;&#39; это оператор </div></div>Ну это на самом низком уровне. Голый процесс вряд-ли можно назвать объектом. А вот gen_server уже вполне, а там для отправки уже нужно делать call или cast. call так вообще очень сильно похож на обычный вызов метода объекта.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809562'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-09-07T06:46:50+00:00">07.09.19, 06:46</time></span><div class='quote '>Expr1 отправлено процессу Expr2. Что там находится в Expr1 совершенно не важно. Что с этим сделает Expr2 тоже совершенно не важно. Нет даже гарантий, что Expr2 существует. А если существует, то нет гарантий, что Expr1 будет когда-то прочитано. А если быдет прочитан, то нет гарантий, что не будет отброшен. А если будет обработан, то нет гарантий, что это выльется в вызов каких-то функций. И процесс, который отправил сообщение ничего не ждет, как при вызове метода, ничего не пишет на стек, живет себе дальше. Вообще если приземленно, то аналогия будет примерно такой: вызов метода - это письмо, в котором Петя говорит Васе, что нужно сделать. А посылка сообщения тогда - это почта, которая это письмо доставляет от Пете к Васе в запечатанном конверте, и чья ответственность ограничивается только доставкой, при этом находится вне сферы влияния и Пети, и Васи.</div></div>Это все детали реализации. Говорят в Smalltalk то что внешне выглядит как отправка сообщений внутри сделано обычными вызовами. :)<br>
<br>
Походу эта дискуссия скоро перейдет в плоскость философии.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809562</guid>
        <pubDate>Sat, 07 Sep 2019 06:46:50 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809562</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809551'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T22:15:16+00:00">06.09.19, 22:15</time></span><div class='quote '>В эрланге, чтобы отправить сообщение, надо вызвать функцию </div></div><br>
Вообще-то &#39;&#33;&#39; это оператор :)<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809551'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T22:15:16+00:00">06.09.19, 22:15</time></span><div class='quote '>то какая принципиальная разницf между отправкой сообщения и вызовом функции?</div></div><br>
Принципиальная :) Ну, если не доходить до абсурда, при котором посылка сообщения - это еще и работа с регистрами процессора, конечно. По сути вызов метода (крайзер сказал все же про метод, а не про функцию) это переход к некоему алгоритму обработки, который должен обработать входные параметры, и что-то да вернуть, хотя бы void. Этот алгоритм еще и должен принадлежать некоему объекту, раз уж речь о методе. Сообщение же это просто абстрактный набор неких данных, семантика которых при передаче сообщения совершенно не важна. Из того же эрланга:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">Expr1 ! Expr2</div></ol></div></div></div></div><br>
Expr1 отправлено процессу Expr2. Что там находится в Expr1 совершенно не важно. Что с этим сделает Expr2 тоже совершенно не важно. Нет даже гарантий, что Expr2 существует. А если существует, то нет гарантий, что Expr1 будет когда-то прочитано. А если быдет прочитан, то нет гарантий, что не будет отброшен. А если будет обработан, то нет гарантий, что это выльется в вызов каких-то функций. И процесс, который отправил сообщение ничего не ждет, как при вызове метода, ничего не пишет на стек, живет себе дальше. Вообще если приземленно, то аналогия будет примерно такой: вызов метода - это письмо, в котором Петя говорит Васе, что нужно сделать. А посылка сообщения тогда - это почта, которая это письмо доставляет от Пете к Васе в запечатанном конверте, и чья ответственность ограничивается только доставкой, при этом находится вне сферы влияния и Пети, и Васи.]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809551</guid>
        <pubDate>Fri, 06 Sep 2019 22:15:16 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809551</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809546'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T21:29:29+00:00">06.09.19, 21:29</time></span><div class='quote '>Так как в изначальной статье была, кажется, отсылка к эрлангу и его сообщениям, то не понимаешь как раз ты. Подробно опишу уже завтра, спатки пора.</div></div>Если отбросить в сторону аснхронность, то какая принципиальная разницf между отправкой сообщения и вызовом функции? В эрланге, чтобы отправить сообщение, надо вызвать функцию  :lol:]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809546</guid>
        <pubDate>Fri, 06 Sep 2019 21:29:29 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809546</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809528'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T19:00:41+00:00">06.09.19, 19:00</time></span><div class='quote '>Мне кажется, вы не понимаете, что такое обмен сообщениями в ОП. В ОП вообще ничего нет, кроме объектов, которые взаимодействуют посредством обмена сообщениями. Именно это и реализуют экземпляры классов посредством вызова методов в ООП.<br>
А то, что вы, ну вот сейчас конкретно ты, JoeUser, считаешь за обмен сообщениями, это не те сообщения, и не те обмены между объектами. Широковещательный, групповой итп обмены – это уже не принцип, а паттерн</div></div><br>
Так как в изначальной статье была, кажется, отсылка к эрлангу и его сообщениям, то не понимаешь как раз ты. Подробно опишу уже завтра, спатки пора.]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809542</guid>
        <pubDate>Fri, 06 Sep 2019 20:24:40 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809542</link>
        <description><![CDATA[korvin: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809481'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T14:07:52+00:00">06.09.19, 14:07</time></span><div class='quote '>Вызовы методов.</div></div><br>
Не совсем. В случае чистого обмена сообщениями<br>
<br>
1) мы можем послать любому объекту любое сообщение. В динамически-типизированных языках так и есть, но в статически-типизированных мы хотим-таки некоторый контроль со стороны системы типов, поэтому классы (часто) являются типами, вводятся интерфейсы и т.п. Только (в случае Java) это реализовано криво: явный implements интерфейсов, в итоге интерфейсы превратились там в некие самостоятельные сущности с кучей религии проектирования вокруг них, их правильного дизайна и применения. Смешение в одну кашу типизации и ООП привело к куче костылей, паттернов и прочего ненужного бойлерплейта. Между тем, всё правильно сделали в OCaml.<br>
<br>
2) из первого вытекает второе: в ООП-системе не может быть null/nil в том виде в котором он есть в Java: некая спец.сущность, имеющая любой объектный тип, соответственно позволяющая системе типов успешно валидировать вызов метода к такой сущности и приводить к NPE (NullPointerException (Java), NullDereferenceException (C#), etc) в рантайме. Т.е., вкратце: в динамических языках должен быть объект nil (так и есть, например в Ruby, SmallTalk, etc. И ему можно добавить методов), в статических — его не должно быть вообще (use option/Maybe/so-on), или он не должен входить в тип, т.е. быть спец-сущностью поверх объектов (как ? в Kotlin, например, или Swift).<br>
<br>
В Java этого нет, поэтому невозможно её систему виртуальных методов назвать объектной. Ещё немного портят картину всякие «спец.фичи» Java-объектов, типа возможность использовать любой объект как lock. Но это уже совсем Java-специфичное дерьмо.]]></description>
        <author>korvin</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809540</guid>
        <pubDate>Fri, 06 Sep 2019 20:18:05 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809540</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809498'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T15:47:10+00:00">06.09.19, 15:47</time></span><div class='quote '><div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809491'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T15:10:59+00:00">06.09.19, 15:10</time></span><div class='quote '>Почему?</div></div><br>
Что &quot;почему&quot;? Почему разработчикам линукса не фиолетово, на чём линукс разрабатывается? :lol:</div></div><br>
Нет, почему они заслуживают более развернутого ответа, чем посылания в задницу? <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-06T20:23:27+00:00">06.09.19, 20:23</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809528'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T19:00:41+00:00">06.09.19, 19:00</time></span><div class='quote '>Именно это и реализуют экземпляры классов посредством вызова методов в ООП.</div></div><br>
Таки не совсем. Вызов метода - это реакция на прием сообщения :)]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809538</guid>
        <pubDate>Fri, 06 Sep 2019 20:01:54 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809538</link>
        <description><![CDATA[korvin: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809528'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T19:00:41+00:00">06.09.19, 19:00</time></span><div class='quote '>что такое обмен сообщениями в ОП</div></div><br>
А что такое обмен сообщениями в ОП?]]></description>
        <author>korvin</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809528</guid>
        <pubDate>Fri, 06 Sep 2019 19:00:41 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809528</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809494'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T15:30:49+00:00">06.09.19, 15:30</time></span><div class='quote '>В голом С++ нормальной реализации этой идиомы нету.<br>
Именно поэтому для реализации &quot;сигнал-слот&quot; Qt запилило свой moc.</div></div>Мне кажется, вы не понимаете, что такое обмен сообщениями в ОП. В ОП вообще ничего нет, кроме объектов, которые взаимодействуют посредством обмена сообщениями. Именно это и реализуют экземпляры классов посредством вызова методов в ООП.<br>
А то, что вы, ну вот сейчас конкретно ты, <strong class='tag-b'>JoeUser</strong>, считаешь за обмен сообщениями, это не те сообщения, и не те обмены между объектами. Широковещательный, групповой итп обмены – это уже не принцип, а паттерн.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809498</guid>
        <pubDate>Fri, 06 Sep 2019 15:47:10 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809498</link>
        <description><![CDATA[OpenGL: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809486'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T14:18:49+00:00">06.09.19, 14:18</time></span><div class='quote '>Как я уже сказал, я не уверен, что более развернутый ответ в принципе возможен  </div></div><br>
Вообще-то тут в теме как минимум два таких приводили.<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809491'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T15:10:59+00:00">06.09.19, 15:10</time></span><div class='quote '>Почему?</div></div><br>
Что &quot;почему&quot;? Почему разработчикам линукса не фиолетово, на чём линукс разрабатывается? :lol:]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809494</guid>
        <pubDate>Fri, 06 Sep 2019 15:30:49 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809494</link>
        <description><![CDATA[JoeUser: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809481'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T14:07:52+00:00">06.09.19, 14:07</time></span><div class='quote '>Вызовы методов.</div></div><br>
В голом С++ нормальной реализации этой идиомы нету. <br>
Именно поэтому для реализации &quot;сигнал-слот&quot; Qt запилило свой moc.<br>
И это, я считаю - костыльное решение&#33; В идеале было бы неплохо<br>
дать возможность структуре-классу генерить сообщение, самому<br>
уметь подписываться, иметь вектор подписчиков, возможность<br>
бродкаста ... Но, коль и многопоточность в С++ не реализуется<br>
самим языком, а его внешней, пусть и стандартной, но либой ...<br>
грузите методы бочками&#33;<br>
<br>
<a class='tag-url' href='http://stanonwork.blogspot.com/2007/09/blog-post_04.html' target='_blank'>Хотя бы такой параллелизм запилили, как в Ada</a>.]]></description>
        <author>JoeUser</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809491</guid>
        <pubDate>Fri, 06 Sep 2019 15:10:59 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809491</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809485'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T14:17:22+00:00">06.09.19, 14:17</time></span><div class='quote '>Но другим разработчикам линукса может быть отнюдь не фиолетово по понятной причине, и они, разумеется, заслуживают более развёрнутого ответа, чем посылание в задницу.</div></div><br>
Почему?]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809486</guid>
        <pubDate>Fri, 06 Sep 2019 14:18:49 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809486</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809485'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T14:17:22+00:00">06.09.19, 14:17</time></span><div class='quote '>и они, разумеется, заслуживают более развёрнутого ответа, чем посылание в задницу. </div></div><br>
Как я уже сказал, я не уверен, что более развернутый ответ в принципе возможен :-? <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-06T14:19:27+00:00">06.09.19, 14:19</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809485'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T14:17:22+00:00">06.09.19, 14:17</time></span><div class='quote '>К тому же ты подменяешь вопросы</div></div><br>
Ничего я не подменяю. Просто выражаю свой взгляд на вещи, говорю, как лично мне кажется.]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809485</guid>
        <pubDate>Fri, 06 Sep 2019 14:17:22 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809485</link>
        <description><![CDATA[OpenGL: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809478'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T13:31:03+00:00">06.09.19, 13:31</time></span><div class='quote '>Если честно, то лично мне сугубо фиолетово на чем разрабатывает Линус. </div></div><br>
Тебе да. Но другим разработчикам линукса может быть отнюдь не фиолетово по понятной причине, и они, разумеется, заслуживают более развёрнутого ответа, чем посылание в задницу. <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-06T14:18:27+00:00">06.09.19, 14:18</time></span></span><br>
К тому же ты подменяешь вопросы. Разговор о том, что линус не осилил плюсы, а не о том, есть кому-то из тут присутствующих дело до того, на чём он разрабатывает.]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809484</guid>
        <pubDate>Fri, 06 Sep 2019 14:14:09 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809484</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809481'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T14:07:52+00:00">06.09.19, 14:07</time></span><div class='quote '>Если б он так сказал, я б только кивнул в ответ.</div></div><br>
Да он, наверное, и говорил. Много раз. Но достоянием общественности стал тот вариант, где он понял, что вопрошающие непосылаемы и попытался дать им то, чего они хотят.<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809481'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T14:07:52+00:00">06.09.19, 14:07</time></span><div class='quote '>Вызовы методов. </div></div><br>
Но вызов метода это не посыл сообщения.]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809481</guid>
        <pubDate>Fri, 06 Sep 2019 14:07:52 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809481</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809478'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T13:31:03+00:00">06.09.19, 13:31</time></span><div class='quote '>Поэтому правильный ответ на вопрос &quot;почему не плюсы?&quot;, как я уже сказал, должен звучать примерно, как &quot;идите в жопу&quot;.</div></div>Если б он так сказал, я б только кивнул в ответ. Но он сказал не это, и при этом абсолютную хрень. Так что если кто вдруг решил, что он ниасилил, то он вполне имеет право так о нём думать. <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-06T14:08:55+00:00">06.09.19, 14:08</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809480'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T14:04:19+00:00">06.09.19, 14:04</time></span><div class='quote '>Где в java обмен сообщениями?</div></div>Вызовы методов.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809480</guid>
        <pubDate>Fri, 06 Sep 2019 14:04:19 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809480</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809479'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T13:59:07+00:00">06.09.19, 13:59</time></span><div class='quote '>Внезапно ООП именно так и выглядит везде.</div></div><br>
Ээээ? :huh: Где в java обмен сообщениями?]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809479</guid>
        <pubDate>Fri, 06 Sep 2019 13:59:07 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809479</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809366'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-05T20:39:43+00:00">05.09.19, 20:39</time></span><div class='quote '>Но прямо вот ржать... думаю Qraizer несколько преувеличивает свою реакцию.</div></div>Та ладно. Он даже цитаты &quot;переврал&quot;, оторвав от контекста в лучших традициях жёлтых троллей. Ну серьёзно же.<br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Плохие никогда не успевают учиться, они просто нажимают кнопки на клавиатуре как сумасшедшие. Нравится вам это или нет, но вы будете работать с такими людьми. И, к сожалению, ООП не имеет достаточных ограничений, которые бы помешали плохим программистам нанести слишком большой ущерб.</div></div>Электродрель является плохим инструментом, не имеющим достаточных ограничений на причинение большого ущерба? Стоит ли её заменять на ручную?<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>На самом деле, чем меньше у программистов выбора, тем более устойчивым становится их код.</div></div>и тем менее продуктивной становится его работа. И устойчивость тут не причём, самый устойчивый код <s class='tag-s'>пишут</s> создают инструменты автогеренации.<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>ООП предоставляет разработчикам слишком много инструментов и вариантов, не налагая правильных ограничений.</div></div>Абсолютная чушь. В любой ОСи её API без ограничений позволяет писать зловредные программы, API с ограничениями не позволяет писать любые приложения. Это справедливые тезисы, но внезапно из этого ничего не следует. Задачи &quot;дать возможность писать любые приложения&quot; и &quot;не дать писать зловредные&quot; противоречивы и не могут быть удовлетворены одновременно. Более того, одно и то же приложение сможет быть и полезным, и зловредным. Эти характеристики не зависят от приложений, они зависят от их пользователей.<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Erlang — это ООП в чистом виде. В отличие от других популярных языков, он сосредоточен на основной идее ООП — обмен сообщениями. В Erlang объекты взаимодействуют, передавая между собой неизменяемые сообщения</div></div>Внезапно ООП именно так и выглядит везде. Если автор не осилил подход ООП, то тот же Линус его уволил бы и не поморщился, и неважно, что писал бы он при этом на чистых Сях. Впрочем, о чём это я... какие нахрен Си рядом с автором.<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Что делает кодовую базу сложной? Есть много вещей, на которые следует обратить внимание. На мой взгляд, главными причинами являются: общее изменяемое состояние, ошибочные абстракции и низкое отношение сигнал/шум (бойлерплейт). <s class='tag-s'>Все они распространены в ООП.</s></div></div>Наконец-то спалился вчистую. Дальше можно уже не цитировать. Бойлеплейт необходим всегда, в любой абстракции, и его высокий процент о чём-то да и говорит. Конечно, и о хреновом проектировании тоже, но внезапно не всегда. Так же как &quot;лучше день потерять, потом за пять минут долететь&quot; плохой аргумент в разовом применении, однако в долгосрочной перспективе он оправдан. Ошибочные абстракции являются результатом неверного проектирования, и пофик, какую парадигму потом использовать для реализации. И наконец, в ООП нет разделяемых состояний, их нет даже в процедурном. Как после этого его можно серьёзно читать дальше, а?<br>
Что там дальше... Инкапсуляция, которая как раз лишает проект разделяемых состояний и которой он так и не научился пользоваться? Заставляющая плохих программистов программировать строго в рамках обмена сообщениями? Напрочь опровергая его собственные тезисы касательно ООП? Рассуждения о наследование, которое чётко показывает, что автор даже не курсе теории ОП как дисциплине, вследствие чего понятия ковариантности, контрвариантности и инвариантности вгоняют его в ступор? Полиморфизм, который он внезапно функционально практикует на всю катушку? Человек не смог научиться мыслить по Дейкстра, коли не осилил простейший патерн проектирования сверху вниз. Т.е. он слился уже на школьной программе, и при этом он – смотрим наверх – senior full-stack-разработчик. Естественно, иммутабельная функциональщина для него единственный выход, иначе он голый король. И безработный.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809478</guid>
        <pubDate>Fri, 06 Sep 2019 13:31:03 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809478</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809476'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T13:09:29+00:00">06.09.19, 13:09</time></span><div class='quote '>Ты должен помнить, что, выступая против сентенций Линуса, я вменил ему совсем не это. Он привёл аргументы против Плюсов, которые ровно так же применимы и к Сям. Об чём предпочёл умолчать. Из чего можно сделать два вывода: либо он просто не понял, о чём высказывается (почему бы и не &quot;не осилил&quot; в конце концов), ибо лично я не могу себе представить, что бы профессиональному разработчику, успешно решающему подобные проблемы в C, могло б помешать использовать те же подходы в C++, либо он лукавит, имея в виду совсем не то, что сказал, умолчав об истинных причинах. </div></div><br>
Если честно, то лично мне сугубо фиолетово на чем разрабатывает Линус. Нет, серьезно, какое мое собачье дело? Он выбрал инструмент, он этим инструментом сделал то, что я не смогу сделать хоть на этом, хоть на любом другом - значит его выбор был верен. У него есть результат. Поэтому правильный ответ на вопрос &quot;почему не плюсы?&quot;, как я уже сказал, должен звучать примерно, как &quot;идите в жопу&quot;. Собственно именно это он и пытался сказать приводя зачем-то какие-то аргументы. Возможно потому, что не знает замечательного ответа ПАТАМУШТА. Ну, в смысле ПАТАМУШТАИДИТЕВЖОПУ, да.]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809476</guid>
        <pubDate>Fri, 06 Sep 2019 13:09:29 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809476</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809420'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T08:26:25+00:00">06.09.19, 08:26</time></span><div class='quote '>Поэтому в конечном итоге идиота, который перечислив несомненные достоинства Светланы сделает вывод, что женится нужно было именно на ней, можно только послать нахер, все остальное будет не конструктивно.</div></div>Ты должен помнить, что, выступая против сентенций Линуса, я вменил ему совсем не это. Он привёл аргументы против Плюсов, которые ровно так же применимы и к Сям. Об чём предпочёл умолчать. Из чего можно сделать два вывода: либо он просто не понял, о чём высказывается (почему бы и не &quot;не осилил&quot; в конце концов), ибо лично я не могу себе представить, что бы профессиональному разработчику, успешно решающему подобные проблемы в C, могло б помешать использовать те же подходы в C++, либо он лукавит, имея в виду совсем не то, что сказал, умолчав об истинных причинах. Ни то, ни другое не говорит в его пользу.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809467</guid>
        <pubDate>Fri, 06 Sep 2019 11:43:47 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809467</link>
        <description><![CDATA[OpenGL: <div class="tag-mod"><div class="tag-mod__prefix">M</div><div class="tag-mod__body">Перенёс обсуждение C vs C++ <a class='tag-url' href='https&#58;//forum.sources.ru/index.php?showtopic=380454&st=345&#entry3809466' target='_blank'>сюда</a></div></div>]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809420</guid>
        <pubDate>Fri, 06 Sep 2019 08:26:25 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809420</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809418'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T08:22:27+00:00">06.09.19, 08:22</time></span><div class='quote '>Если А и Б в целом +- эквивалентны (git vs mercurial, vs code vs vim, блондинки vs брюнетки), то да. Если же вопрос звучит &quot;Почему не Б, как более подходящей для задачи&quot;, да ещё если объективно Б покрывает абсолютно все возможности А и добавляет 100500 удобных плюшек, нужных в любом проекте сложнее helloworld-а, то вопрос более чем логичен. </div></div><br>
Все эти вопросы из серии &quot;Почему ты женился на Маше, а не на Свете? Света тоже красивая, и борщи варит лучше Маши&#33;&quot;. Но любовь случилась с Машей, а не со Светой, и перечисление кулинарных способностей Светы сделать с этим ничего не сможет. Поэтому в конечном итоге идиота, который перечислив несомненные достоинства Светланы сделает вывод, что женится нужно было именно на ней, можно только послать нахер, все остальное будет не конструктивно.]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809418</guid>
        <pubDate>Fri, 06 Sep 2019 08:22:27 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809418</link>
        <description><![CDATA[OpenGL: Если А и Б в целом +- эквивалентны (git vs mercurial, vs code vs vim, блондинки vs брюнетки), то да. Если же вопрос звучит &quot;Почему не Б, как более подходящей для задачи&quot;, да ещё если объективно Б покрывает абсолютно все возможности А и добавляет 100500 удобных плюшек, нужных в любом проекте сложнее helloworld-а, то вопрос более чем логичен.]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809406</guid>
        <pubDate>Fri, 06 Sep 2019 08:07:48 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809406</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809396'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T07:48:49+00:00">06.09.19, 07:48</time></span><div class='quote '>Это обсуждали уже - тогда бы на вопрос &quot;почему не плюсы&quot; был бы дан совершенно другой ответ. </div></div><br>
Если честно, то вопрос &quot;почему вы используете А, а не Б?&quot; в общем случае входит в топ самых тупых вопросов.]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809396</guid>
        <pubDate>Fri, 06 Sep 2019 07:48:49 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809396</link>
        <description><![CDATA[OpenGL: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809390'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T07:17:33+00:00">06.09.19, 07:17</time></span><div class='quote '>&quot;Не осилил&quot; во всех смыслах означает, что пытался осилить, но не шмогла. </div></div><br>
Ну значит не у всех :) <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-06T07:50:26+00:00">06.09.19, 07:50</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809389'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T07:15:14+00:00">06.09.19, 07:15</time></span><div class='quote '>Как насчет &quot;научился но не захотел использовать&quot;? </div></div><br>
Это обсуждали уже - тогда бы на вопрос &quot;почему не плюсы&quot; был бы дан совершенно другой ответ.]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809390</guid>
        <pubDate>Fri, 06 Sep 2019 07:17:33 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809390</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809388'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T07:11:04+00:00">06.09.19, 07:11</time></span><div class='quote '>В данном случае &quot;не осилил&quot; означает &quot;не научился пользоваться&quot;, а не &quot;слишком тупой, чтобы научиться&quot;, разумеется, т.е. просто констатация фактов без причины оного.<br>
</div></div>&quot;Не осилил&quot; во всех смыслах означает, что пытался осилить, но не шмогла. Так же и гики обзывают друг-друга неосиляторами, намекая на то, что обзываемый хает сабж, только лишь потому, что ума не хватило освоить, а честно признаться в этом не позволяет гордость.<br>
А многие плюсовики искренне считают, что их язык - это нечто доступное только особо талантливым чувакам, вроде них самих :)]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809389</guid>
        <pubDate>Fri, 06 Sep 2019 07:15:14 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809389</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809388'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T07:11:04+00:00">06.09.19, 07:11</time></span><div class='quote '>В данном случае &quot;не осилил&quot; означает &quot;не научился пользоваться&quot;, а не &quot;слишком тупой, чтобы научиться&quot;, разумеется, т.е. просто констатация фактов без причины оного. </div></div><br>
Как насчет &quot;научился но не захотел использовать&quot;? :)]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809388</guid>
        <pubDate>Fri, 06 Sep 2019 07:11:04 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809388</link>
        <description><![CDATA[OpenGL: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809386'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T07:02:24+00:00">06.09.19, 07:02</time></span><div class='quote '>Что в этих плюсах такого, чтобы их неосилить?</div></div><br>
В данном случае &quot;не осилил&quot; означает &quot;не научился пользоваться&quot;, а не &quot;слишком тупой, чтобы научиться&quot;, разумеется, т.е. просто констатация фактов без причины оного.]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809387</guid>
        <pubDate>Fri, 06 Sep 2019 07:09:13 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809387</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809366'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-05T20:39:43+00:00">05.09.19, 20:39</time></span><div class='quote '>Статья бредовая, практически полностью. Но прямо вот ржать..</div></div><br>
Ну, вообще что еще остается, если чел на полном серьезе заявляет, что в фп 2+2 всегда 4, а в ооп иногда даже 5? :D <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-06T07:10:43+00:00">06.09.19, 07:10</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809386'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T07:02:24+00:00">06.09.19, 07:02</time></span><div class='quote '>Не думаю, что Линус неосилятор. Что в этих плюсах такого, чтобы их неосилить? Скорее он нежелает их осиливать, вероятно религия не позволяет, ибо Линус, как ни крути, слегонца упорот. А может и не слегонца. </div></div><br>
Думаю он прекрасно все осилил, понял, что оно ему не нужно, и на этом все закончилось. С когнитивными способностями у него все в порядке, поэтому говорить, что он что-то не осилил эт довольно смело.]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809386</guid>
        <pubDate>Fri, 06 Sep 2019 07:02:24 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809386</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809374'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T04:06:07+00:00">06.09.19, 04:06</time></span><div class='quote '>Или их уже можно считать неосиляторами и сбитыми летчиками?</div></div>Цитаты могут быть коряво переведены, вырваны из контекста, могут быть шутками, ну и слова Ленина о цитатах в интернете никто не отменял. <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-06T07:07:14+00:00">06.09.19, 07:07</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809376'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T04:27:03+00:00">06.09.19, 04:27</time></span><div class='quote '>Как минимум тут уже обсуждали неосиляторство Линуса в плюсах </div></div>Не думаю, что Линус неосилятор. Что в этих плюсах такого, чтобы их неосилить? Скорее он нежелает их осиливать, вероятно религия не позволяет, ибо Линус, как ни крути, слегонца упорот. А может и не слегонца. Несмотря на упоротость (а скорее всего благодаря ей) Линус оказался весьма одаренным товарищем. Он еще в школе лабал на Sinclair QL мама не горюй, пока вы, в лучшем случае, ссались в пеленки.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809382</guid>
        <pubDate>Fri, 06 Sep 2019 06:26:43 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809382</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809381'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T06:24:22+00:00">06.09.19, 06:24</time></span><div class='quote '>&quot;Посрамили&quot; в моём понимании подразумевает участие того, кого срамят, так что нет </div></div><br>
Что, даже заочно не доказали, что он ничего не умеет, ничего не знает, и вообще неудачник? Странно... :D]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809381</guid>
        <pubDate>Fri, 06 Sep 2019 06:24:22 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809381</link>
        <description><![CDATA[OpenGL: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809378'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T05:56:11+00:00">06.09.19, 05:56</time></span><div class='quote '>И как, посрамили этого недоучку? </div></div><br>
&quot;Посрамили&quot; в моём понимании подразумевает участие того, кого срамят, так что нет  :no-sad:]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809378</guid>
        <pubDate>Fri, 06 Sep 2019 05:56:11 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809378</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809376'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T04:27:03+00:00">06.09.19, 04:27</time></span><div class='quote '>Как минимум тут уже обсуждали неосиляторство Линуса в плюсах </div></div><br>
И как, посрамили этого недоучку? :D]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809376</guid>
        <pubDate>Fri, 06 Sep 2019 04:27:03 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809376</link>
        <description><![CDATA[OpenGL: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809374'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-09-06T04:06:07+00:00">06.09.19, 04:06</time></span><div class='quote '>Или их уже можно считать неосиляторами и сбитыми летчиками?<br>
</div></div><br>
Как минимум тут уже обсуждали неосиляторство Линуса в плюсах :)]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809374</guid>
        <pubDate>Fri, 06 Sep 2019 04:06:07 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809374</link>
        <description><![CDATA[JoeUser: Странно, а ведь в статье очень много высказываний действительно именитых персонажей в проектировании и программинге.<br>
Или их уже можно считать неосиляторами и сбитыми летчиками? <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-06T04:13:24+00:00">06.09.19, 04:13</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809352'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-05T17:47:08+00:00">05.09.19, 17:47</time></span><div class='quote '><div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>ООП-код является недетерминированным.</div></div></div></div><br>
А вот это я действительно не могу понять. Он может быть недетерминированным в одном случае, если в &quot;недрах&quot; Calculator ввести левые дополнения, а потом их не учитывать. Типа перевести состояние объекта в &quot;3-ичное исчисление&quot;, а потом трактовать результат как 10-ричный, ну или вообще какие-то случайные величины. Но и в этом случае нельзя говорить о ООП-коде, а речь идет о недетерминированных результатах. Но это же возможный косяк программера, а не ООП.]]></description>
        <author>JoeUser</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809366</guid>
        <pubDate>Thu, 05 Sep 2019 20:39:43 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809366</link>
        <description><![CDATA[applegame: Статья бредовая, практически полностью. Но прямо вот ржать... думаю Qraizer несколько преувеличивает свою реакцию.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809352</guid>
        <pubDate>Thu, 05 Sep 2019 17:47:08 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809352</link>
        <description><![CDATA[Qraizer: Та там всё избранное. Ну реально же. <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-09-05T17:49:35+00:00">05.09.19, 17:49</time></span></span><br>
Вот хоть первая цитата, от которой выбежал на улицу поржать, до этого удавалось сдерживаться.<br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>ООП-код является недетерминированным. В отличие от функционального программирования, нет гарантий в получении одинакового вывода при одинаковых входных данных. Это делает анализ программы очень сложным. В качестве упрощённого примера: вывод 2 + 2 или calculator.Add(2, 2) в основном равен четырём, но иногда он может становиться равным трём, пяти и даже 1004. Зависимости объекта Calculator могут изменить результат вычисления трудно уловимым, но основательным способом.</div></div>]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809348</guid>
        <pubDate>Thu, 05 Sep 2019 16:51:46 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809348</link>
        <description><![CDATA[JoeUser: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809347'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-05T16:49:56+00:00">05.09.19, 16:49</time></span><div class='quote '>Всю статью процитировать? </div></div><br>
Нет, только избранное, самое-самое.]]></description>
        <author>JoeUser</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809347</guid>
        <pubDate>Thu, 05 Sep 2019 16:49:56 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809347</link>
        <description><![CDATA[Qraizer: Всю статью процитировать?]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809342</guid>
        <pubDate>Thu, 05 Sep 2019 14:33:47 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809342</link>
        <description><![CDATA[JoeUser: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3809319'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-09-05T11:44:08+00:00">05.09.19, 11:44</time></span><div class='quote '>Ржал бы в голос, если б не спящие человеки рядом.</div></div><br>
Процитируй плс, что именно тебя пробило на хи-хи? :-?]]></description>
        <author>JoeUser</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809319</guid>
        <pubDate>Thu, 05 Sep 2019 11:44:08 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3809319</link>
        <description><![CDATA[Qraizer: Ржал бы в голос, если б не спящие человеки рядом.<br>
<a class='tag-url' href='https://tproger.ru/translations/oop-the-trillion-dollar-disaster/' target='_blank'>Мнение: объектно-ориентированное программирование — катастрофа на триллион долларов</a>]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800857</guid>
        <pubDate>Fri, 07 Jun 2019 12:28:18 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800857</link>
        <description><![CDATA[OpenGL: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3800849'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-06-07T11:28:26+00:00">07.06.19, 11:28</time></span><div class='quote '>А виртуальное наследование по логике понятно, а по реализации - туман. </div></div><br>
А что там туманного? Просто в лоб хранить указатель на виртуальную базу.]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800856</guid>
        <pubDate>Fri, 07 Jun 2019 12:25:57 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800856</link>
        <description><![CDATA[Wound: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3800849'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-06-07T11:28:26+00:00">07.06.19, 11:28</time></span><div class='quote '>А вот с Сями не факт</div></div><br>
В Сях тоже все очевидно. Там нет ни VMT, ни наследования. :rolleyes:]]></description>
        <author>Wound</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800849</guid>
        <pubDate>Fri, 07 Jun 2019 11:28:26 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800849</link>
        <description><![CDATA[JoeUser: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3800801'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-06-06T17:27:23+00:00">06.06.19, 17:27</time></span><div class='quote '>И твой авторитет для него абсолютен, не смотря на все то, что он говорил в своей мировоззренческой теме</div></div><br>
Ну таки да ... В теме по Цэ++ <strong class='tag-b'>Qraizer</strong> у меня в авторитетах :lol: и не безосновательно. <br>
И еще я знаю, что он в компьютерных игрушках в теме. Но тут уж без меня, игры в некомпьютерную жысть мне вполне хватает.<br>
<br>
А по теме ...<br>
<br>
Да, если взять Пасквиль - там все просто и очевидно с VMT. А вот с Сями не факт. Множественное наследование - не просто. А виртуальное наследование по логике понятно, а по реализации - туман. Вот именно про это я и хотел услышать от Qraizer&#39;а. <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-06-07T11:37:58+00:00">07.06.19, 11:37</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3800846'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-06-07T10:52:40+00:00">07.06.19, 10:52</time></span><div class='quote '>Сейчас вот перечитал в спокойной обстановке и всё равно не понял, в чём вопрос. </div></div><br>
Забей. Если не понял, значит оно не важно. <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-06-07T11:40:37+00:00">07.06.19, 11:40</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3800794'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-06-06T14:48:14+00:00">06.06.19, 14:48</time></span><div class='quote '>Что ты собственно, хотел узнать-то? Бо ничего не понятно... </div></div><br>
Хотел услышать твою &quot;версию&quot; построения VMT.]]></description>
        <author>JoeUser</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800846</guid>
        <pubDate>Fri, 07 Jun 2019 10:52:40 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800846</link>
        <description><![CDATA[Qraizer: Ну, у <strong class='tag-b'>JoeUser</strong>-а там большой пост. Я его не осилил тогда. Сейчас вот перечитал в спокойной обстановке и всё равно не понял, в чём вопрос. <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-06-07T10:57:44+00:00">07.06.19, 10:57</time></span></span><br>
Если всё же по реализации полиморфизма, то да, описать несложно. Типичный подход, который любому C программеру первым придёт в голову: массив указателей на функции, индексируемый уникальным для класса значением, подготавливаемым в его конструкторе и хранимым в скрытом поле класса (+ индекс самого метода, известного компилятору по его имени). На деле принцип может немного отличаться. В поле класса может храниться готовый поинтер, VMT может быть не строго массивом итп, но это уже детали.<br>
Интереснее порассуждать, как реализуется множественная диспетчеризация в языках с её поддержкой. Там всё куда сильнее закручено. C++ к таковым не относится, так что подглядеть некуда.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800817</guid>
        <pubDate>Fri, 07 Jun 2019 05:09:23 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800817</link>
        <description><![CDATA[OpenGL: Не совсем понятно, что в нём может быть непонятного. Разве что в виртуальном множественном наследовании, но и при нём, если понимать, что это такое, механизм будет более-менее ясен  :-?]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800801</guid>
        <pubDate>Thu, 06 Jun 2019 17:27:23 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800801</link>
        <description><![CDATA[D_KEY: Я так понял, что <strong class='tag-b'>JoeUser</strong> хотел узнать у тебя про механизм виртуальных вызовов. И твой авторитет для него абсолютен, не смотря на все то, что он говорил в своей мировоззренческой теме :)]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800794</guid>
        <pubDate>Thu, 06 Jun 2019 14:48:14 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800794</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3800694'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-06-04T14:53:14+00:00">04.06.19, 14:53</time></span><div class='quote '>Ну тогда жду (ждем).</div></div>Что ты собственно, хотел узнать-то? Бо ничего не понятно...]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800791</guid>
        <pubDate>Thu, 06 Jun 2019 11:15:12 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800791</link>
        <description><![CDATA[JoeUser: <strong class='tag-b'>applegame</strong>, Эпл, на все твои инсинуации отвечу - я всегда буду смешнее тебя, ибо я - Петросян, патамучта&#33;&#33;&#33;]]></description>
        <author>JoeUser</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800783</guid>
        <pubDate>Thu, 06 Jun 2019 09:24:02 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800783</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3800781'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-06-06T08:47:54+00:00">06.06.19, 08:47</time></span><div class='quote '>А всегда тебя щетал полезным - а оно вот как&#33;&#33;&#33;  </div></div>Я крайне вреден, реальность сурова.  :D<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3800781'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-06-06T08:47:54+00:00">06.06.19, 08:47</time></span><div class='quote '>Никогда такого не делал &#33;&#33;&#33;   </div></div>Никогда такого не было и вот опять.  :lol: Киля все уже нашел.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800781</guid>
        <pubDate>Thu, 06 Jun 2019 08:47:54 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800781</link>
        <description><![CDATA[JoeUser: <strong class='tag-b'>applegame</strong>, блин&#33;&#33;&#33; &gt;:( <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-06-06T08:48:59+00:00">06.06.19, 08:48</time></span></span><br>
А всегда тебя щетал полезным - а оно вот как&#33;&#33;&#33; :-? <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2019-06-06T08:55:07+00:00">06.06.19, 08:55</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3800780'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-06-06T08:35:23+00:00">06.06.19, 08:35</time></span><div class='quote '>То ты гадишь на аксиомы &quot;аксакалов&quot;, то доверяешь им </div></div><br>
Никогда такого не делал &#33;&#33;&#33;  &gt;:( <br>
Никогда не гадил&#33; Вообще никогда&#33;&#33;&#33;<br>
Какал - это да, но это физиология. <br>
А что попадал, так это стечение обстоятельств. <br>
Ящетаю .]]></description>
        <author>JoeUser</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800780</guid>
        <pubDate>Thu, 06 Jun 2019 08:35:23 +0000</pubDate>
        <title>ООП - в топку&amp;#33;</title>
        <link>https://forum.sources.ru/index.php?showtopic=414867&amp;view=findpost&amp;p=3800780</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=414867&view=findpost&p=3800772'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-06-06T07:32:49+00:00">06.06.19, 07:32</time></span><div class='quote '>Wound, давай договоримся - не будем обсуждать САМОГО МЕНЯ  </div></div>Нет уж, давай обсудим.  :lol:<br>
То ты гадишь на аксиомы &quot;аксакалов&quot;, то доверяешь им :)]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      </channel>
      </rss>
	