<?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=370195&amp;view=findpost&amp;p=3268335</guid>
        <pubDate>Fri, 01 Feb 2013 07:24:29 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3268335</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=370195&view=findpost&p=3267216'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>deil &#064; <time class="tag-quote__quoted-time" datetime="2013-01-29T15:45:18+04:00">29.01.13, 11:45</time></span><div class='quote '>Это что значит? </div></div>Есть такая штука - преждевременная пессимизация. В С++ это применение постфиксного ++ там где можно применить префиксный. Передача объемных данных по значению, а не по ссылке, применение неподходящих контейнеров и т.п. Поэтому когда я вижу что в операторе += происходят бессмысленные копирования я чувствую себя неуютно.<br>
<br>
a += b (модифицируется кусок памяти переменной a)<br>
a = a + b (резервируется новый кусок памяти, в него помещается результат a + b, старый кусок - собирается сборщиком мусора)<br>
<br>
Как минимум две лишних операции: аллокация памяти и освобождение. В C++, в подобных случаях, я на автомате ненужные операции с памятью исключаю.]]></description>
        <author>applegame</author>
        <category>Ruby</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3267216</guid>
        <pubDate>Tue, 29 Jan 2013 11:45:18 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3267216</link>
        <description><![CDATA[deil: Это что значит?]]></description>
        <author>deil</author>
        <category>Ruby</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3265772</guid>
        <pubDate>Fri, 25 Jan 2013 19:20:49 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3265772</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=370195&view=findpost&p=3265575'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>deil &#064; <time class="tag-quote__quoted-time" datetime="2013-01-25T12:16:32+00:00">25.01.13, 12:16</time></span><div class='quote '>Я бы переформулировал вопрос так: код на С++ нужно постоянно оптимизировать? ;)</div></div>В C++ не нужно постоянно пессимизировать.]]></description>
        <author>applegame</author>
        <category>Ruby</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3265575</guid>
        <pubDate>Fri, 25 Jan 2013 12:16:32 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3265575</link>
        <description><![CDATA[deil: Я бы переформулировал вопрос так: код на С++ нужно постоянно оптимизировать? ;)]]></description>
        <author>deil</author>
        <category>Ruby</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3264628</guid>
        <pubDate>Wed, 23 Jan 2013 12:40:47 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3264628</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=370195&view=findpost&p=3261795'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Мохнатый &#064; <time class="tag-quote__quoted-time" datetime="2013-01-16T06:23:36+00:00">16.01.13, 06:23</time></span><div class='quote '>Нормально он реализован. </div></div>В целом, да, работает. Возможно сказываются мои плюсовые замашки оптимизировать все что оптимизируется.]]></description>
        <author>applegame</author>
        <category>Ruby</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3261795</guid>
        <pubDate>Wed, 16 Jan 2013 06:23:36 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3261795</link>
        <description><![CDATA[Мохнатый: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=370195&view=findpost&p=3255617'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2012-12-26T12:40:00+00:00">26.12.12, 12:40</time></span><div class='quote '>Есть ли возможность в руби как-то нормально реализовать оператор += ?</div></div><br>
Нормально он реализован.]]></description>
        <author>Мохнатый</author>
        <category>Ruby</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3260742</guid>
        <pubDate>Sun, 13 Jan 2013 09:44:40 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3260742</link>
        <description><![CDATA[korvin: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=370195&view=findpost&p=3256947'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>amk &#064; <time class="tag-quote__quoted-time" datetime="2012-12-29T23:04:44+00:00">29.12.12, 23:04</time></span><div class='quote '>В Алголе 68, Алголе W и Аде (хотя могу и ошибаться) в этом смысле хорошо. Там можно новые операторы определять.</div></div><br>
В Хаскелле, например, тоже, только читать код наводненный разнообразными операторами с разными приоритетами как-то не очень легко.]]></description>
        <author>korvin</author>
        <category>Ruby</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3258724</guid>
        <pubDate>Mon, 07 Jan 2013 23:09:30 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3258724</link>
        <description><![CDATA[deil: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=370195&view=findpost&p=3256941'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2012-12-29T22:15:31+00:00">29.12.12, 22:15</time></span><div class='quote '><div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=370195&view=findpost&p=3256288'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>deil &#064; <time class="tag-quote__quoted-time" datetime="2012-12-28T08:26:57+00:00">28.12.12, 08:26</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=370195&view=findpost&p=3256288'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>deil &#064; <time class="tag-quote__quoted-time" datetime="2012-12-28T08:26:57+00:00">28.12.12, 08:26</time></span><div class='quote '>Что мешает в + не возвращать новый объект, а модифицировать первый операнд? </div></div>Мешает здравый смысл. За подобное поведение следует немедленное отрывание рук.<br>
<br>
Насколько я понял придется просто написать метод делающий то что нужно. Но так хотелось, чтобы еще и выглядело красиво. И почему они не сделали отдельный метод +=?</div></div><br>
Ну каков вопрос, таков и ответ собственно..]]></description>
        <author>deil</author>
        <category>Ruby</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3256947</guid>
        <pubDate>Sat, 29 Dec 2012 23:04:44 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3256947</link>
        <description><![CDATA[amk: В Алголе 68, Алголе W и Аде (хотя могу и ошибаться) в этом смысле хорошо. Там можно новые операторы определять.]]></description>
        <author>amk</author>
        <category>Ruby</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3256941</guid>
        <pubDate>Sat, 29 Dec 2012 22:15:31 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3256941</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=370195&view=findpost&p=3256288'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>deil &#064; <time class="tag-quote__quoted-time" datetime="2012-12-28T08:26:57+00:00">28.12.12, 08:26</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=370195&view=findpost&p=3256288'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>deil &#064; <time class="tag-quote__quoted-time" datetime="2012-12-28T08:26:57+00:00">28.12.12, 08:26</time></span><div class='quote '>Что мешает в + не возвращать новый объект, а модифицировать первый операнд? </div></div>Мешает здравый смысл. За подобное поведение следует немедленное отрывание рук.<br>
<br>
Насколько я понял придется просто написать метод делающий то что нужно. Но так хотелось, чтобы еще и выглядело красиво. И почему они не сделали отдельный метод +=?]]></description>
        <author>applegame</author>
        <category>Ruby</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3256499</guid>
        <pubDate>Fri, 28 Dec 2012 16:51:54 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3256499</link>
        <description><![CDATA[amk: Вообще-то думаю будет совсем нехорошо, если при выполнении строки<br>a = b + c<br>кроме a будет изменяться и b.<br><br>Так что не думаю, что изменение семантики операции + (или любой другой подобной) может кончиться чем то хорошим.]]></description>
        <author>amk</author>
        <category>Ruby</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3256288</guid>
        <pubDate>Fri, 28 Dec 2012 08:26:57 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3256288</link>
        <description><![CDATA[deil: С каких пор += не возвращает новый объект? Что мешает в + не возвращать новый объект, а модифицировать первый операнд?]]></description>
        <author>deil</author>
        <category>Ruby</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3255617</guid>
        <pubDate>Wed, 26 Dec 2012 12:40:00 +0000</pubDate>
        <title>ruby переопределение операторов</title>
        <link>https://forum.sources.ru/index.php?showtopic=370195&amp;view=findpost&amp;p=3255617</link>
        <description><![CDATA[applegame: Есть ли возможность в руби как-то нормально реализовать оператор += ?<br>Я конечно знаю, что можно просто переопределить оператор + а руби сам a += b преваратит в a = a + b<br>Задница в том что во время простой операции сложения возвращается новый объект, а в случае += в новом объекте нет необходимсоти, достаточно модифицировать уже существующий. Как сделать += в руби не создавая новых объектов?]]></description>
        <author>applegame</author>
        <category>Ruby</category>
      </item>
	
      </channel>
      </rss>
	