<?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=386813&amp;view=findpost&amp;p=3939057</guid>
        <pubDate>Fri, 22 May 2026 02:18:32 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939057</link>
        <description><![CDATA[Majestio: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3939054'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2026-05-21T21:23:16+03:00">21.05.26, 18:23</time></span><div class='quote '>Это ты кого... э-э-э... кем обозвал-то?</div></div><br>
Я нечяянно, по синьке - а это щетай не щетается&#33; :lol: Просто фильм вспомнился клёвый, ретро.]]></description>
        <author>Majestio</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939054</guid>
        <pubDate>Thu, 21 May 2026 18:23:16 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939054</link>
        <description><![CDATA[Qraizer: Это ты кого... э-э-э... кем обозвал-то? А то был тут у нас один &quot;посетитель&quot;:<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>— О, привет. А чё ты тут делаешь?<br>
— Та вот, денег вам надо заплатить.<br>
— :blink: </div></div>Я так и не понял, кто кому.<br>
<br>
P.S. Честно пытался вспомнить, почему тогда замолчал. Не вспомнил. То ли МС-21 заканчивался, то ли SuperJet начинался.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939049</guid>
        <pubDate>Thu, 21 May 2026 15:09:14 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939049</link>
        <description><![CDATA[Majestio: Не, посоны&#33;&#33;&#33; По-чесноку ... я знаю поговорку &quot;На дураков не обижаются&quot; ... Но я хотя бы попытался  :lol:]]></description>
        <author>Majestio</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939046</guid>
        <pubDate>Thu, 21 May 2026 13:52:42 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939046</link>
        <description><![CDATA[Majestio: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3939034'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2026-05-19T16:47:17+00:00">19.05.26, 16:47</time></span><div class='quote '><br>
P.S. Это VS2022, если что. Банальный ключик-O2</div></div><br>
Кто людям помогает - тот тратит время зря&#33;&#33;&#33; Хорошими делами прославиццо незя&#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="2026-05-21T14:42:20+00:00">21.05.26, 14:42</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3939034'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2026-05-19T16:47:17+00:00">19.05.26, 16:47</time></span><div class='quote '>P.S. Это VS2022, если что. Банальный ключик-O2</div></div><br>
Ой, отлегло от души ... 12 мин искал, где можно <strong class='tag-b'>Qraizer&#39;а</strong> попытаться обидеть, и вот настал момент&#33;&#33;&#33;  :lol:<br>
<br>
<a class='tag-url' href='https://ibb.co/DfqGWg5T' target='_blank'><img class='tag-img' src='https://i.ibb.co/N241CnZb/Screenshot-1.png' alt='user posted image'></a>]]></description>
        <author>Majestio</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939034</guid>
        <pubDate>Tue, 19 May 2026 16:47:17 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939034</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="2026-05-19T16:56:25+00:00">19.05.26, 16:56</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3850912'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2021-08-14T10:27:58+00:00">14.08.21, 10:27</time></span><div class='quote '>Полюбуйтесь как плюсовой std::function безбожно сливает встроенным дешным лямбдам:<br>
...</div></div> :huh: <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="2026-05-19T16:59:34+00:00">19.05.26, 16:59</time></span></span><br>
Удивили козла капустой. :D Нефик в ГНУсных портах работать:<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">#include &#60;functional&#62;</div><div class="code_line">&nbsp;</div><div class="code_line">class Foo {</div><div class="code_line">public:</div><div class="code_line">&nbsp;&nbsp; &nbsp;virtual void foo(std::function&#60;void()&#62; f);</div><div class="code_line">};</div><div class="code_line">&nbsp;</div><div class="code_line">int bar(Foo* foo, int a, int b, int c, int d) {</div><div class="code_line">&nbsp;&nbsp; &nbsp;int e;</div><div class="code_line">&nbsp;&nbsp; &nbsp;foo-&#62;foo([&amp;] { e = a + b + c + d; });</div><div class="code_line">&nbsp;&nbsp; &nbsp;return e;</div><div class="code_line">}</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><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">_TEXT &nbsp; SEGMENT</div><div class="code_line">_&#60;e&#62;$ = 8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ; size = 4</div><div class="code_line">_&#60;a&#62;$ = 12 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;; size = 4</div><div class="code_line">_&#60;b&#62;$ = 16 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;; size = 4</div><div class="code_line">_&#60;c&#62;$ = 20 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;; size = 4</div><div class="code_line">_&#60;d&#62;$ = 24 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;; size = 4</div><div class="code_line">??0&#60;lambda_ac228c855dc2c6ed19d01a392d90130f&#62;@@QAE@AAH0000@Z PROC ; &#60;lambda_ac228c855dc2c6ed19d01a392d90130f&#62;::&#60;lambda_ac228c855dc2c6ed19d01a392d90130f&#62;, COMDAT</div><div class="code_line">; _this$ = ecx</div><div class="code_line">; File D:\Work\CPPdel\q.cpp</div><div class="code_line">; Line 10</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, DWORD PTR _&#60;e&#62;$[esp-4]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [ecx], eax</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, DWORD PTR _&#60;a&#62;$[esp-4]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [ecx+4], eax</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, DWORD PTR _&#60;b&#62;$[esp-4]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [ecx+8], eax</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, DWORD PTR _&#60;c&#62;$[esp-4]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [ecx+12], eax</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, DWORD PTR _&#60;d&#62;$[esp-4]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [ecx+16], eax</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, ecx</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;ret &nbsp; &nbsp; 20 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;; 00000014H</div><div class="code_line">??0&#60;lambda_ac228c855dc2c6ed19d01a392d90130f&#62;@@QAE@AAH0000@Z ENDP ; &#60;lambda_ac228c855dc2c6ed19d01a392d90130f&#62;::&#60;lambda_ac228c855dc2c6ed19d01a392d90130f&#62;</div><div class="code_line">_TEXT &nbsp; ENDS</div><div class="code_line">; Function compile flags: /Ogtpy</div><div class="code_line">; &nbsp; &nbsp; &nbsp; COMDAT ??R&#60;lambda_ac228c855dc2c6ed19d01a392d90130f&#62;@@QBE@XZ</div><div class="code_line">_TEXT &nbsp; SEGMENT</div><div class="code_line">??R&#60;lambda_ac228c855dc2c6ed19d01a392d90130f&#62;@@QBE@XZ PROC ; &#60;lambda_ac228c855dc2c6ed19d01a392d90130f&#62;::operator(), COMDAT</div><div class="code_line">; _this$ = ecx</div><div class="code_line">; File D:\Work\CPPdel\q.cpp</div><div class="code_line">; Line 10</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, DWORD PTR [ecx+16]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; edx, DWORD PTR [ecx+12]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;push &nbsp; &nbsp;esi</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; esi, DWORD PTR [eax]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, DWORD PTR [ecx+8]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;add &nbsp; &nbsp; esi, DWORD PTR [edx]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;add &nbsp; &nbsp; esi, DWORD PTR [eax]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, DWORD PTR [ecx+4]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;add &nbsp; &nbsp; esi, DWORD PTR [eax]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, DWORD PTR [ecx]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [eax], esi</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;pop &nbsp; &nbsp; esi</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;ret &nbsp; &nbsp; 0</div><div class="code_line">??R&#60;lambda_ac228c855dc2c6ed19d01a392d90130f&#62;@@QBE@XZ ENDP ; &#60;lambda_ac228c855dc2c6ed19d01a392d90130f&#62;::operator()</div><div class="code_line">_TEXT &nbsp; ENDS</div><div class="code_line">; Function compile flags: /Ogtpy</div><div class="code_line">; &nbsp; &nbsp; &nbsp; COMDAT ?bar@@YAHPAVFoo@@HHHH@Z</div><div class="code_line">_TEXT &nbsp; SEGMENT</div><div class="code_line">_e$ = -4 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;; size = 4</div><div class="code_line">_foo$ = 8 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ; size = 4</div><div class="code_line">_a$ = 12 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;; size = 4</div><div class="code_line">_b$ = 16 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;; size = 4</div><div class="code_line">_c$ = 20 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;; size = 4</div><div class="code_line">_d$ = 24 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;; size = 4</div><div class="code_line">?bar@@YAHPAVFoo@@HHHH@Z PROC &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;; bar, COMDAT</div><div class="code_line">; File D:\Work\CPPdel\q.cpp</div><div class="code_line">; Line 8</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;push &nbsp; &nbsp;ecx</div><div class="code_line">; Line 10</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;sub &nbsp; &nbsp; esp, 40 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ; 00000028H</div><div class="code_line">; File C:\VS2022\VC\Tools\MSVC.44.35207\include\functional</div><div class="code_line">; Line 855</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;lea &nbsp; &nbsp; ecx, DWORD PTR _e$[esp+44]</div><div class="code_line">; File D:\Work\CPPdel\q.cpp</div><div class="code_line">; Line 10</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, esp</div><div class="code_line">; File C:\VS2022\VC\Tools\MSVC.44.35207\include\functional</div><div class="code_line">; Line 855</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [eax], OFFSET ??_7?$_Func_impl_no_alloc@V&#60;lambda_ac228c855dc2c6ed19d01a392d90130f&#62;@@X$$V@std@@6B@</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [eax+4], ecx</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;lea &nbsp; &nbsp; ecx, DWORD PTR _a$[esp+40]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [eax+8], ecx</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;lea &nbsp; &nbsp; ecx, DWORD PTR _b$[esp+40]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [eax+12], ecx</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;lea &nbsp; &nbsp; ecx, DWORD PTR _c$[esp+40]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [eax+16], ecx</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;lea &nbsp; &nbsp; ecx, DWORD PTR _d$[esp+40]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [eax+20], ecx</div><div class="code_line">; File D:\Work\CPPdel\q.cpp</div><div class="code_line">; Line 10</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; ecx, DWORD PTR _foo$[esp+40]</div><div class="code_line">; File C:\VS2022\VC\Tools\MSVC.44.35207\include\functional</div><div class="code_line">; Line 978</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; DWORD PTR [eax+36], eax</div><div class="code_line">; File D:\Work\CPPdel\q.cpp</div><div class="code_line">; Line 10</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, DWORD PTR [ecx]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;call &nbsp; &nbsp;DWORD PTR [eax]</div><div class="code_line">; Line 11</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, DWORD PTR _e$[esp+4]</div><div class="code_line">; Line 12</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;pop &nbsp; &nbsp; ecx</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;ret &nbsp; &nbsp; 0</div><div class="code_line">?bar@@YAHPAVFoo@@HHHH@Z ENDP &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;; bar</div><div class="code_line">_TEXT &nbsp; ENDS</div></ol></div></div></div></div><br>
<br>
P.S. Это VS2022, если что. Банальный ключик-O2]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939033</guid>
        <pubDate>Tue, 19 May 2026 16:40:14 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939033</link>
        <description><![CDATA[Majestio: :-?]]></description>
        <author>Majestio</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939026</guid>
        <pubDate>Tue, 19 May 2026 06:03:21 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939026</link>
        <description><![CDATA[D_KEY: Мертвый же язык. А так вроде были биндинги для gtk и qt]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939019</guid>
        <pubDate>Mon, 18 May 2026 16:05:20 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3939019</link>
        <description><![CDATA[Majestio: В телегу написал, но повторюсь тут ... Ну так за 5 (пять) лет появилось чо-то в D, с помощью которого можно без напряга гуячить и кроссплатформить?&#33;&#33;&#33;]]></description>
        <author>Majestio</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3850930</guid>
        <pubDate>Sat, 14 Aug 2021 18:11:21 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3850930</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3850923'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2021-08-14T14:33:44+00:00">14.08.21, 14:33</time></span><div class='quote '>applegame, поясни за scope в данном кейсе, плиз.</div></div>Это чит :)<br>
scope гарантирует компилятору, что лямбда не утечет за пределы скоупа функции. Соответственно компилятор может вместо аллоцирования замыкания на куче, просто передать в функцию указатель на контекст на стеке и указатель на функцию лямбды.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3850923</guid>
        <pubDate>Sat, 14 Aug 2021 14:33:44 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3850923</link>
        <description><![CDATA[D_KEY: <strong class='tag-b'>applegame</strong>, поясни за scope в данном кейсе, плиз.]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3850922</guid>
        <pubDate>Sat, 14 Aug 2021 14:21:59 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3850922</link>
        <description><![CDATA[korvin: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3850912'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2021-08-14T10:27:58+00:00">14.08.21, 10:27</time></span><div class='quote '>Сравните ассемблерный выхлоп функции bar и самой лямбды.</div></div><br>
Я ничего не понимаю в ассемблере.<br>
<br>
<a class='tag-url' href='https://godbolt.org/z/Te5vE3T4a' target='_blank'>Ocaml</a>, <a class='tag-url' href='https://godbolt.org/z/dnMGjMdd6' target='_blank'>Go</a>.]]></description>
        <author>korvin</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3850914</guid>
        <pubDate>Sat, 14 Aug 2021 11:34:22 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3850914</link>
        <description><![CDATA[OpenGL: Ну и <a class='tag-url' href='https://godbolt.org/z/aebxeT74G' target='_blank'>раст</a> тогда уж вдогонку]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3850912</guid>
        <pubDate>Sat, 14 Aug 2021 10:27:58 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3850912</link>
        <description><![CDATA[applegame: Полюбуйтесь как плюсовой std::function безбожно сливает встроенным дешным лямбдам:<br>
C++: <a class='tag-url' href='https://godbolt.org/z/jzo4aGfGb' target='_blank'>https://godbolt.org/z/jzo4aGfGb</a><br>
D: <a class='tag-url' href='https://godbolt.org/z/senjvanrW' target='_blank'>https://godbolt.org/z/senjvanrW</a><br>
<br>
Сравните ассемблерный выхлоп функции bar и самой лямбды.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3806156</guid>
        <pubDate>Mon, 05 Aug 2019 13:32:31 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3806156</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3806121'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-08-05T03:49:55+00:00">05.08.19, 03:49</time></span><div class='quote '>Та не. Если её не одёрнуть __declspec(), она вообще в компайл-тайм константу 20 высчитывает.</div></div>Ну поэтому я и одергивал, компилятор D тоже так делает.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3806121</guid>
        <pubDate>Mon, 05 Aug 2019 03:49:55 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3806121</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805990'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-08-04T09:03:32+00:00">04.08.19, 09:03</time></span><div class='quote '>Визуалка видимо инлайнит</div></div>Та не. Если её не одёрнуть __declspec(), она вообще в компайл-тайм константу 20 высчитывает.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3806052</guid>
        <pubDate>Sun, 04 Aug 2019 16:19:29 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3806052</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805990'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-08-04T09:03:32+00:00">04.08.19, 09:03</time></span><div class='quote '>Если разнести эти функции, то такую оптимизацию в плюсах в принципе невозможно будет сделать.</div></div><br>
А с -flto?]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805990</guid>
        <pubDate>Sun, 04 Aug 2019 09:03:32 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805990</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805480'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-07-31T11:44:22+00:00">31.07.19, 11:44</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=386813&amp;view=findpost&amp;p=3805852</guid>
        <pubDate>Fri, 02 Aug 2019 20:17:53 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805852</link>
        <description><![CDATA[korvin: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805043'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T13:46:01+00:00">27.07.19, 13:46</time></span><div class='quote '>Потому, что будет легче на него перейти и переводить существующие системы на него.</div></div><br>
Ну вон в Go нет «нормального ООП» и вообще никакого параметрического полиморфизма, да и обработка ошибок не «нормальная» (привычна разве что для махровых Сишников). Каналы, опять же, для многих «программистов на мейнстримных языках» — не сильно привычный способ синхронизации. Но достаточно много людей его таки начали использовать.]]></description>
        <author>korvin</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805480</guid>
        <pubDate>Wed, 31 Jul 2019 11:44:22 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805480</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805429'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-30T23:43:21+00:00">30.07.19, 23:43</time></span><div class='quote '>Плюсы не смогут сделать такую оптимизацию в общем случае. В плюсах нет scope.</div></div>Во-первых, это сделано в твоём собственном листинге вверху. Я даже проверил, визуалка тоже так умеет. Во-вторых, в Плюсах нет и Cёвого restrict. По той же причине, подозреваю, почему нет scope.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805429</guid>
        <pubDate>Tue, 30 Jul 2019 23:43:21 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805429</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805391'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-30T13:31:12+00:00">30.07.19, 13:31</time></span><div class='quote '>А какие преимущества перед шаблоном в данном случае? </div></div>Даже с шаблоном под замыкания в плюсовой лямбде будет выделена память как минимум на стеке. Например, на стеке лежит переменная, а в замыкании ссылка на эту переменную. Ну и template code bloat никто не отменял.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805391'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-30T13:31:12+00:00">30.07.19, 13:31</time></span><div class='quote '>А для такого случая эта штука со scope как будет работать?</div></div>К такой штуке scope не прикрутишь никак. Тут будут аллокации в GC. Либо можно как в плюсах хранить функторы аналогичные std::function.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805394'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-07-30T13:57:19+00:00">30.07.19, 13:57</time></span><div class='quote '>Так это просто оптимизация. Оптимизировать и C++ умеет. Для общего-то случая такая оптимизация не гарантируется.</div></div>Плюсы не смогут сделать такую оптимизацию в общем случае. В плюсах нет scope.<br>
<br>
Но в целом это мелочь, я считаю. Но интересная, на мой взгляд.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805394</guid>
        <pubDate>Tue, 30 Jul 2019 13:57:19 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805394</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805388'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-30T13:22:53+00:00">30.07.19, 13:22</time></span><div class='quote '>Если время жизни лямбды меньше времени жизни переменных замыкания, то можно не резервировать дополнительную память, а обращаться напрямую к данным на стеке. D так умеет</div></div>Так это просто оптимизация. Оптимизировать и C++ умеет. Для общего-то случая такая оптимизация не гарантируется.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805391</guid>
        <pubDate>Tue, 30 Jul 2019 13:31:12 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805391</link>
        <description><![CDATA[D_KEY: А какие преимущества перед шаблоном в данном случае? <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-07-30T13:32:10+00:00">30.07.19, 13:32</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805388'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-30T13:22:53+00:00">30.07.19, 13:22</time></span><div class='quote '>Но есть другой недостаток: например, нельзя сделать массив лямбд с одинаковой сигнатурой, но разными замыканиями.</div></div><br>
А для такого случая эта штука со scope как будет работать?]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805388</guid>
        <pubDate>Tue, 30 Jul 2019 13:22:53 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805388</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805384'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-07-30T11:20:14+00:00">30.07.19, 11:20</time></span><div class='quote '>Каким образом?</div></div>Если время жизни лямбды меньше времени жизни переменных замыкания, то можно не резервировать дополнительную память, а обращаться напрямую к данным на стеке. 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">void foo(scope void delegate(int) fn) {</div><div class="code_line">&nbsp;&nbsp; &nbsp;fn(10);</div><div class="code_line">}</div><div class="code_line">&nbsp;</div><div class="code_line">int bar() {</div><div class="code_line">&nbsp;&nbsp; &nbsp;int i = 10;</div><div class="code_line">&nbsp;&nbsp; &nbsp;foo((int x){</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;i += x;</div><div class="code_line">&nbsp;&nbsp; &nbsp;});</div><div class="code_line">&nbsp;&nbsp; &nbsp;return i;</div><div class="code_line">}</div></ol></div></div></div></div><br>
В данном случае в foo передается делегат, время жизни которого, меньше, чем переменной замыкания i. Компилятор знает, что делегат никуда не утечет из функции foo, благодаря атрибуту scope. В foo будет передан указатель на функцию делегата и указатель на стековый фрейм с переменной i.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805384'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-07-30T11:20:14+00:00">30.07.19, 11:20</time></span><div class='quote '>Причём тут преимущества? Я за недостатки. Просто иначе std::function&lt;&gt; не может быть устроен.</div></div>А, окай, я тебя неверно понял.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805384'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-07-30T11:20:14+00:00">30.07.19, 11:20</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=386813&amp;view=findpost&amp;p=3805384</guid>
        <pubDate>Tue, 30 Jul 2019 11:20:14 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805384</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805359'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-30T07:56:41+00:00">30.07.19, 07:56</time></span><div class='quote '>Ни стековой ни dynamic storage ни GC.</div></div>Каким образом?<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805359'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-30T07:56:41+00:00">30.07.19, 07:56</time></span><div class='quote '>Ну этот подход работает и в D, так что здесь преимуществ нет.</div></div>Причём тут преимущества? Я за недостатки. Просто иначе std::function&lt;&gt; не может быть устроен. Другое дело шаблон, он недостатка не имеет.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805359</guid>
        <pubDate>Tue, 30 Jul 2019 07:56:41 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805359</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805313'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-07-29T17:59:05+00:00">29.07.19, 17:59</time></span><div class='quote '>Для замыканий память по любому нужна. Хоть какая-нибудь где-то там.</div></div>Какая-нибудь нужна, но в D нередко можно обойтись без <strong class='tag-b'>дополнительной</strong> памяти для замыканий. Ни стековой ни dynamic storage ни GC. Плюсы́ такого фокуса, ЕМНИП, не умеют.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805337'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-07-29T22:30:38+00:00">29.07.19, 22:30</time></span><div class='quote '>Но я-то за Плюсы. Динамический полиморфизм за интерфейсом скрывает информацию об исходном типе, однако её сохраняет статический полиморфизм. Так что да, где спасовал std::function&lt;&gt;, вывозит шаблон.</div></div>Ну этот подход работает и в D, так что здесь преимуществ нет.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805337</guid>
        <pubDate>Mon, 29 Jul 2019 22:30:38 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805337</link>
        <description><![CDATA[Qraizer: Но я-то за Плюсы. Динамический полиморфизм за интерфейсом скрывает информацию об исходном типе, однако её сохраняет статический полиморфизм. Так что да, где спасовал std::function&lt;&gt;, вывозит шаблон.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805314</guid>
        <pubDate>Mon, 29 Jul 2019 18:18:25 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805314</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805313'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-07-29T17:59:05+00:00">29.07.19, 17:59</time></span><div class='quote '>std::function&lt;&gt; должен быть готов работать с любым объектом, чей интерфейс имеет реализацию указанного operator()</div></div><br>
Делегаты в D обладают подобным же свойством.]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805313</guid>
        <pubDate>Mon, 29 Jul 2019 17:59:05 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805313</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805183'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>amk &#064; <time class="tag-quote__quoted-time" datetime="2019-07-28T20:26:44+00:00">28.07.19, 20:26</time></span><div class='quote '>И, насколько понимаю, для замыкания всегда выделяется память в стеке.</div></div>Для замыканий память по любому нужна. Хоть какая-нибудь где-то там. Вопрос &quot;можно ли без аллокаций&quot;, думаю, надо понимать как &quot;можно ли без dynamic storage&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-07-29T18:07:41+00:00">29.07.19, 18:07</time></span></span><br>
Вопрос в другом: почему хочется без dynamic storage? ИМХО только лишь из-за проблем с производительностью и отсутствием явных языковых правил для dynamic storage duration. С GC можно было бы не париться за duration, но вопрос производительности только ужесточился бы. std::function&lt;&gt; должен быть готов работать с любым объектом, чей интерфейс имеет реализацию указанного operator(), а значит не может не быть полиморфным, а значит в объектной модели C++ должен работать с объектами косвенно, а значит посредством dynamic storage и указателями. Причём с подсчётом ссылок, ибо иначе std::function&lt;&gt; не имел бы семантику значений.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805183</guid>
        <pubDate>Sun, 28 Jul 2019 20:26:44 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805183</link>
        <description><![CDATA[amk: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805135'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-28T13:20:01+00:00">28.07.19, 13:20</time></span><div class='quote '>А вот можно ли в плюсах создать &quot;типизированную&quot; лямбду (std::function&lt;void(int)&gt; например) с замыканиями, но без аллокаций в куче?</div></div> <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805139'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-28T13:28:45+00:00">28.07.19, 13:28</time></span><div class='quote '>Ну если тебя не устроит auto f = ... или передача в шаблон функции, то нет.</div></div> Насколько я понимаю, нет синтаксиса, чтобы типизировать лямбду явно. А неявно компилятор в любом случае её типизирует (поскольку с нетипизированными объектами работать не умеет)<br>
И, насколько понимаю, для замыкания всегда выделяется память в стеке.]]></description>
        <author>amk</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805163</guid>
        <pubDate>Sun, 28 Jul 2019 17:16:18 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805163</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805142'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-28T14:06:25+00:00">28.07.19, 14:06</time></span><div class='quote '>void foo(std::function&lt;void(int)&gt; fn) {</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-07-28T17:17:46+00:00">28.07.19, 17:17</time></span></span><br>
А, сорри, страничка новая.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805146</guid>
        <pubDate>Sun, 28 Jul 2019 14:41:12 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805146</link>
        <description><![CDATA[applegame: Смотрим асм.<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">int example.bar():</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;push &nbsp; &nbsp;rax</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; dword ptr [rsp], 10</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; rdi, rsp</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;call &nbsp; &nbsp;pure nothrow @nogc @safe void example.foo!(example.bar().__lambda1(int)).foo()@PLT</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, dword ptr [rsp]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;pop &nbsp; &nbsp; rcx</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;ret</div><div class="code_line">&nbsp;</div><div class="code_line">pure nothrow @nogc @safe void example.foo!(example.bar().__lambda1(int)).foo():</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;add &nbsp; &nbsp; dword ptr [rdi], 10</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;ret</div></ol></div></div></div></div><br>
<br>
С++:<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">bar(): &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# @bar()</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;push &nbsp; &nbsp;rax</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; dword ptr [rsp + 4], 10</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;lea &nbsp; &nbsp; rdi, [rsp + 4]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;call &nbsp; &nbsp;void foo&#60;bar()::$_0&#62;(bar()::$_0)</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;mov &nbsp; &nbsp; eax, dword ptr [rsp + 4]</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;pop &nbsp; &nbsp; rcx</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;ret</div><div class="code_line">&nbsp;</div><div class="code_line">void foo&#60;bar()::$_0&#62;(bar()::$_0): &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; # @&quot;void foo&#60;bar()::$_0&#62;(bar()::$_0)&quot;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;add &nbsp; &nbsp; dword ptr [rdi], 10</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;ret</div></ol></div></div></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-07-28T15:10:57+00:00">28.07.19, 15:10</time></span></span><br>
Но это все ситуативные оптимизации. Полагаю, что производительность C++ и D можно считать одинаковой, при прочих равных.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805145</guid>
        <pubDate>Sun, 28 Jul 2019 14:26:01 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805145</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805144'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-28T14:13:54+00:00">28.07.19, 14:13</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=386813&view=findpost&p=3805144'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-28T14:13:54+00:00">28.07.19, 14:13</time></span><div class='quote '>Нахрена?</div></div>Затем же зачем и <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">pragma(inline, false)</div></ol></div></div></div></div><br>
Иначе и clang и ldc оптимизируют bar в нуль: вернуть 20. :lol: <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-07-28T14:32:57+00:00">28.07.19, 14:32</time></span></span><br>
Сравниваем шаблонные версии:<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">pragma(inline, false)</div><div class="code_line">void foo(alias fn)() {</div><div class="code_line">&nbsp;&nbsp; &nbsp;fn(10);</div><div class="code_line">}</div><div class="code_line">&nbsp;</div><div class="code_line">int bar() {</div><div class="code_line">&nbsp;&nbsp; &nbsp;int i = 10;</div><div class="code_line">&nbsp;&nbsp; &nbsp;foo!((int x){</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;i += x;</div><div class="code_line">&nbsp;&nbsp; &nbsp;});</div><div class="code_line">&nbsp;&nbsp; &nbsp;return i;</div><div class="code_line">}</div></ol></div></div></div></div><br>
<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">template&#60;typename F&#62;</div><div class="code_line">__attribute((noinline))</div><div class="code_line">void foo(F fn) {</div><div class="code_line">&nbsp;&nbsp; &nbsp;fn(10);</div><div class="code_line">}</div><div class="code_line">&nbsp;</div><div class="code_line">int bar() {</div><div class="code_line">&nbsp;&nbsp; &nbsp;int i = 10;</div><div class="code_line">&nbsp;&nbsp; &nbsp;foo([&amp;i](int x){</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;i += x;</div><div class="code_line">&nbsp;&nbsp; &nbsp;});</div><div class="code_line">&nbsp;&nbsp; &nbsp;return i;</div><div class="code_line">}</div></ol></div></div></div></div>]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805144</guid>
        <pubDate>Sun, 28 Jul 2019 14:13:54 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805144</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805142'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-28T14:06:25+00:00">28.07.19, 14:06</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-07-28T14:15:08+00:00">28.07.19, 14:15</time></span></span><br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>__attribute((noinline))</div></div><br>
Нахрена?]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805142</guid>
        <pubDate>Sun, 28 Jul 2019 14:06:25 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805142</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805139'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-28T13:28:45+00:00">28.07.19, 13:28</time></span><div class='quote '>Ну если тебя не устроит auto f = ... или передача в шаблон функции, то нет. Но мне кажется, что о чем-то таком уже был спор тут и даже тесты были, где кресты все равно выиграли по скорости.</div></div>У кого выигрывали? Я что-то не помню такого спора. Речь именно о типизированной лямбде, для передачи в нешаблонную функцию:<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">pragma(inline, false)</div><div class="code_line">void foo(scope void delegate(int) fn) {</div><div class="code_line">&nbsp;&nbsp; &nbsp;fn(10);</div><div class="code_line">}</div><div class="code_line">&nbsp;</div><div class="code_line">int bar() {</div><div class="code_line">&nbsp;&nbsp; &nbsp;int i = 10;</div><div class="code_line">&nbsp;&nbsp; &nbsp;foo((int x){</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;i += x;</div><div class="code_line">&nbsp;&nbsp; &nbsp;});</div><div class="code_line">&nbsp;&nbsp; &nbsp;return i;</div><div class="code_line">}</div></ol></div></div></div></div><br>
Прямой плюсовой аналог однозначно просрет дешному во всем:<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">#include &#60;functional&#62;</div><div class="code_line">&nbsp;</div><div class="code_line">__attribute((noinline))</div><div class="code_line">void foo(std::function&#60;void(int)&#62; fn) {</div><div class="code_line">&nbsp;&nbsp; &nbsp;fn(10);</div><div class="code_line">}</div><div class="code_line">&nbsp;</div><div class="code_line">int bar() {</div><div class="code_line">&nbsp;&nbsp; &nbsp;int i = 10;</div><div class="code_line">&nbsp;&nbsp; &nbsp;foo([&amp;i](int x){</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;i += x;</div><div class="code_line">&nbsp;&nbsp; &nbsp;});</div><div class="code_line">&nbsp;&nbsp; &nbsp;return i;</div><div class="code_line">}</div></ol></div></div></div></div><br>
<br>
В дешном аллокаций не будет, в плюсовом, насколько я понимаю, стопроцентно будет.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805139</guid>
        <pubDate>Sun, 28 Jul 2019 13:28:45 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805139</link>
        <description><![CDATA[D_KEY: Ну если тебя не устроит auto f = ... или передача в шаблон функции, то нет. Но мне кажется, что о чем-то таком уже был спор тут и даже тесты были, где кресты все равно выиграли по скорости.]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805135</guid>
        <pubDate>Sun, 28 Jul 2019 13:20:01 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805135</link>
        <description><![CDATA[applegame: А вот можно ли в плюсах создать &quot;типизированную&quot; лямбду (std::function&lt;void(int)&gt; например) с замыканиями, но без аллокаций в куче?]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805133</guid>
        <pubDate>Sun, 28 Jul 2019 12:48:14 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805133</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805131'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-07-28T12:42:01+00:00">28.07.19, 12:42</time></span><div class='quote '><div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805120'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Flex Ferrum &#064; <time class="tag-quote__quoted-time" datetime="2019-07-28T11:33:49+00:00">28.07.19, 11:33</time></span><div class='quote '>Надо придумывать новые&#33;</div></div><br>
Ну в нише мобильных устройств С++ таки подвинулся нехотя  :lol:</div></div><br>
Да он много где подвинулся. Просто не все хотят это признавать.]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805131</guid>
        <pubDate>Sun, 28 Jul 2019 12:42:01 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805131</link>
        <description><![CDATA[JoeUser: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805120'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Flex Ferrum &#064; <time class="tag-quote__quoted-time" datetime="2019-07-28T11:33:49+00:00">28.07.19, 11:33</time></span><div class='quote '>Надо придумывать новые&#33;</div></div><br>
Ну в нише мобильных устройств С++ таки подвинулся нехотя  :lol:]]></description>
        <author>JoeUser</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805121</guid>
        <pubDate>Sun, 28 Jul 2019 11:42:20 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805121</link>
        <description><![CDATA[OpenGL: Явошарпы и go разве претендовали на замену плюсам? По-моему максимум на что они претендовали это на какую-либо нишу.]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805120</guid>
        <pubDate>Sun, 28 Jul 2019 11:33:49 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805120</link>
        <description><![CDATA[Flex Ferrum: Заканчивалась вторая декада 21-го века. Люди всё ещё придумывали, чем бы им заменить С++. Варианты с Java, C#, D, Go и Rust уже пробовали... Надо придумывать новые&#33; :D]]></description>
        <author>Flex Ferrum</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805099</guid>
        <pubDate>Sun, 28 Jul 2019 07:28:59 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805099</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805079'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Wound &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T19:14:01+00:00">27.07.19, 19:14</time></span><div class='quote '>D на какую область ориентирован? У него просто синтаксис с какой то встроенной библиотекой? Многопоточность, кросплатформенность на каком уровне? Какие библиотеки под него есть? Игры писать там? Веб? Десктоп? Или это просто какой то красивый синтаксис?</div></div>Область у D приблизительно совпадает с C/C++, но из-за достаточно удобного синтаксиса и быстрой компиляции он неплохо зашел в web и даже в скриптинг. С многопоточностью все отлично, с библиотеками не ахти, но к D можно прибиндить сишные и плюсовые либки. Так что игры писать можно. Без рантайма (а значит без GC и большой части стандартной либы) поддерживает, в принципе, все что поддерживают gcc и llvm. Полноценно поддерживаются x86/x86_64 Linux/Windows/MacOS/FreeBSD. Существуют неофициальные билды для Android и Raspberry PI.<br>
Короче, если отклонился от официально поддерживаемых платформ - готовся к танцам с бубном. Например: <a class='tag-url' href='https://habr.com/ru/post/428982/' target='_blank'>Как на D писать под ARM</a>]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805079</guid>
        <pubDate>Sat, 27 Jul 2019 19:14:01 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805079</link>
        <description><![CDATA[Wound: D на какую область ориентирован? У него просто синтаксис с какой то встроенной библиотекой?  Многопоточность, кросплатформенность на каком уровне? Какие библиотеки под него есть? Игры писать там? Веб? Десктоп? Или это просто какой то красивый синтаксис?]]></description>
        <author>Wound</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805074</guid>
        <pubDate>Sat, 27 Jul 2019 18:51:39 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805074</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805070'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T18:21:52+00:00">27.07.19, 18:21</time></span><div class='quote '>А этим можно как-то управлять? </div></div>Можно заставить компилятор запретить операции с GC в нужном скоупе и не пользоваться этими операциями, заменяя их на RAII, RC (счетчики ссылок), а то и на старое доброе ручное управление памятью.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805070'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T18:21:52+00:00">27.07.19, 18:21</time></span><div class='quote '>Ну оптимизирующий компилятор - достаточно сложная штука, у C и C++ больше и ресурсов и наработок.</div></div>Во-первых, автор D - <a class='tag-url' href='https://ru.wikipedia.org/wiki/%D0%91%D1%80%D0%B0%D0%B9%D1%82,_%D0%A3%D0%BE%D0%BB%D1%82%D0%B5%D1%80' target='_blank'>Уолтер Брайт</a>, который сам является разработчиком хорошо известного в прошлом C++ компилятора. Во-вторых, вероятно, ты недооцениваешь оптимизации llvm и бекенда gcc. Все три компилятора D: dmd, gcc и ldc используюут один и тот же фронтенд. А вот бекенды у них разные. Результаты весьма отличаются.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805070</guid>
        <pubDate>Sat, 27 Jul 2019 18:21:52 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805070</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805056'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T17:30:00+00:00">27.07.19, 17:30</time></span><div class='quote '>Полностью отвязать в принципе невозможно, так как встроенные массивы и замыкания <em class='tag-i'>могут</em> задействовать GC.</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-07-27T18:23:56+00:00">27.07.19, 18:23</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805067'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T18:01:11+00:00">27.07.19, 18:01</time></span><div class='quote '><div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805065'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T17:57:34+00:00">27.07.19, 17:57</time></span><div class='quote '>Ну круто, если так </div></div>D очень похож на плюсы, так что это не удивительно.</div></div><br>
Ну оптимизирующий компилятор - достаточно сложная штука, у C и C++ больше и ресурсов и наработок.]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805067</guid>
        <pubDate>Sat, 27 Jul 2019 18:01:11 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805067</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805065'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T17:57:34+00:00">27.07.19, 17:57</time></span><div class='quote '>Ну круто, если так </div></div>D очень похож на плюсы, так что это не удивительно.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805065</guid>
        <pubDate>Sat, 27 Jul 2019 17:57:34 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805065</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805056'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T17:30:00+00:00">27.07.19, 17:30</time></span><div class='quote '>а вот gdc (который уже в gcc) и ldc оптимизируют не хуже соответственно g++ и clang.</div></div><br>
Ну круто, если так :)]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805064</guid>
        <pubDate>Sat, 27 Jul 2019 17:55:25 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805064</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805060'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T17:40:04+00:00">27.07.19, 17:40</time></span><div class='quote '>А насколько просто переносится туда метакод оттуда?</div></div>Трудно сказать. Что-то простое переносится просто:<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">template&#60;typename A&#62; void foo(A a){ ... }</div></ol></div></div></div></div>⇓<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">void foo(A)(A a){ ... }</div></ol></div></div></div></div><br>
Что-то более сложное может потребовать переписывания с нуля, включая алгоритмы и даже философию. Думаю, метапрограмминг в D тебе бы очень понравился, но в дизайне других мест понакосячено серьезно. Так что D умудряется вызывать восторг и ненависть одновременно. :lol:<br>
Ну и я бы не стал писать на D код для авионики. :)]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805063</guid>
        <pubDate>Sat, 27 Jul 2019 17:44:58 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805063</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805025'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T08:56:23+00:00">27.07.19, 08:56</time></span><div class='quote '>Не знаю, что ты подразумеваешь под &quot;полноценные&quot;.</div></div>На джитхабе есть их, но все неполноценные. Например, требующие предоставить полный набор перекрывающих сигнатур. Или всего лишь двупараметрические. Без статических параметров. ...итп. А для полноценности требуются мультиметоды, максимально похожие на обычные функции: произвольная -арность, отсутствие ограничений на типы параметров, лишь некоторые из которых, указывается в прототипе, должны связываться в рантайм, перекрывающие сигнатуры не должны обязательно покрывать полный перебор вариантов, для не предоставленных вариантов должны применяться стандартные правила перегрузки most viable. Как минимум.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805062</guid>
        <pubDate>Sat, 27 Jul 2019 17:44:26 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805062</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805052'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T17:07:20+00:00">27.07.19, 17:07</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=386813&amp;view=findpost&amp;p=3805060</guid>
        <pubDate>Sat, 27 Jul 2019 17:40:04 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805060</link>
        <description><![CDATA[Qraizer: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805025'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T08:56:23+00:00">27.07.19, 08:56</time></span><div class='quote '>Но все, что можно наметапрограммить в плюсах, можно наметапрограммить в D.</div></div>А насколько просто переносится туда метакод оттуда?]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805056</guid>
        <pubDate>Sat, 27 Jul 2019 17:30:00 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805056</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805036'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T10:58:30+00:00">27.07.19, 10:58</time></span><div class='quote '>За D не скажу, но вроде тесты тоже не в его пользу попадались.</div></div>Есть и обратные тесты, где D обгоняет плюсья. Но это все синтетика, в которых если порыться выясняется, что код нихрена не эквивалентный. Референсный компилятор dmd довольно паршиво оптимизирует, а вот gdc (который уже в gcc) и ldc оптимизируют не хуже соответственно g++ и clang.  В моей Fedora и gdc и ldc ставится из стандартных реп.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805038'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T11:26:49+00:00">27.07.19, 11:26</time></span><div class='quote '>Так они собираются убрать зависимость стандартной библиотеки от GC полностью или такой цели не стоит, а просто потихоньку убирают там, где можно обойтись?</div></div>Там где можно обойтись убирают. Полностью отвязать в принципе невозможно, так как встроенные массивы и замыкания <em class='tag-i'>могут</em> задействовать GC.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805038'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T11:26:49+00:00">27.07.19, 11:26</time></span><div class='quote '>А наоборот?</div></div>Наоборот нет. В D полно метапрограмминга пока недоступного плюсам.<br>
По мультиметодам нагуглил вариант реализации: <a class='tag-url' href='https://github.com/jll63/openmethods.d' target='_blank'>https://github.com/jll63/openmethods.d</a><br>
и блогпост посвященный ей же: <a class='tag-url' href='https://dlang.org/blog/2017/08/28/open-methods-from-c-to-d/' target='_blank'>https://dlang.org/blog/2017/08/28/open-methods-from-c-to-d/</a>]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805052</guid>
        <pubDate>Sat, 27 Jul 2019 17:07:20 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805052</link>
        <description><![CDATA[JoeUser: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805051'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T17:03:23+00:00">27.07.19, 17:03</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=386813&amp;view=findpost&amp;p=3805051</guid>
        <pubDate>Sat, 27 Jul 2019 17:03:23 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805051</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805048'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>JoeUser &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T15:27:46+00:00">27.07.19, 15:27</time></span><div class='quote '><div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805043'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T13:46:01+00:00">27.07.19, 13:46</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=386813&amp;view=findpost&amp;p=3805048</guid>
        <pubDate>Sat, 27 Jul 2019 15:27:46 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805048</link>
        <description><![CDATA[JoeUser: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805043'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T13:46:01+00:00">27.07.19, 13:46</time></span><div class='quote '>Потому, что будет легче на него перейти и переводить существующие системы на него. </div></div><br>
Не факт. Все зависит от привычек. Я вот тоже как только начал читать про Раст, сразу как-то воспринял в штыки, что в нем весь фарш ООП реализуется средствами синтаксиса частично. Остальное конечно  тоже можно сделать, но чуть сложнее (если не ошибаюсь <strong class='tag-b'>OpenGL</strong> показывал). Но если, к примеру, сравнить С++ и Раст, просто подход разный. У С++ основной подход - это реализация свойств путем объявления методов, наследования для расширения этого &quot;набора свойств&quot;, виртуализации методов для переопределения свойств после наследования. У Раста другой подход - реализация поведений. Тоже подход, который имеет право на жысть, как основная концепция. Могу конечно ошибаться, пока только изучаю, но во многих статьях именно это ставят как особенность языка (не говоря конечно о заимствованиях и временах жизни).]]></description>
        <author>JoeUser</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805043</guid>
        <pubDate>Sat, 27 Jul 2019 13:46:01 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805043</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805041'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>korvin &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T12:05:55+00:00">27.07.19, 12:05</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=386813&amp;view=findpost&amp;p=3805041</guid>
        <pubDate>Sat, 27 Jul 2019 12:05:55 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805041</link>
        <description><![CDATA[korvin: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805037'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T11:21:40+00:00">27.07.19, 11:21</time></span><div class='quote '><div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805006'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-07-26T21:47:26+00:00">26.07.19, 21:47</time></span><div class='quote '> Ну, и, разумеется, там пропущено &quot;не&quot;.</div></div><br>
Фак. И правда  :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-07-27T12:10:45+00:00">27.07.19, 12:10</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805036'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T10:58:30+00:00">27.07.19, 10:58</time></span><div class='quote '>Нормальное не в смысле &quot;правильное&quot;, а в смысле &quot;привычное&quot;, &quot;обыденное&quot;, как раз &quot;мейнстримные&quot;</div></div><br>
Тогда почему ты указываешь это как критерий какого-то положительного качества языка?]]></description>
        <author>korvin</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805039</guid>
        <pubDate>Sat, 27 Jul 2019 11:40:53 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805039</link>
        <description><![CDATA[OpenGL: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805025'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T08:56:23+00:00">27.07.19, 08:56</time></span><div class='quote '>RC-контейнеры</div></div><br>
Что это за зверь?]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805038</guid>
        <pubDate>Sat, 27 Jul 2019 11:26:49 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805038</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805025'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T08:56:23+00:00">27.07.19, 08:56</time></span><div class='quote '>Выпиливать GC никто не будет. Программист сам может выпилить GC если он ему не нужен, или прицепить свой собственный GC. Я тут развлечения ради попиливаю на D мелкую RTOS для микроконтроллеров STM32 с кооперативной многозадачностью, никакого GC очевидно там нет. Другой вопрос, что без GC большая часть стандартной либы отваливается, также отваливается и часть фич самого языка. Они работают над этим, добились довольно серьезного прогресса, надо признать.</div></div><br>
Это хорошо. Так они собираются убрать зависимость стандартной библиотеки от GC полностью или такой цели не стоит, а просто потихоньку убирают там, где можно обойтись?<br>
<br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>Не знаю, что ты подразумеваешь под &quot;полноценные&quot;. Но все, что можно наметапрограммить в плюсах, можно наметапрограммить в 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=386813&amp;view=findpost&amp;p=3805037</guid>
        <pubDate>Sat, 27 Jul 2019 11:21:40 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805037</link>
        <description><![CDATA[OpenGL: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805005'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>korvin &#064; <time class="tag-quote__quoted-time" datetime="2019-07-26T21:32:25+00:00">26.07.19, 21:32</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=386813&view=findpost&p=3805006'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Астарот &#064; <time class="tag-quote__quoted-time" datetime="2019-07-26T21:47:26+00:00">26.07.19, 21:47</time></span><div class='quote '> Ну, и, разумеется, там пропущено &quot;не&quot;.</div></div><br>
Фак. И правда  :lol:]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805036</guid>
        <pubDate>Sat, 27 Jul 2019 10:58:30 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805036</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805025'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>applegame &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T08:56:23+00:00">27.07.19, 08:56</time></span><div class='quote '>Странная фраза. Чего за ним угоняться-то? Компиляторы для эквивалентного кода в плюсах и D генерят абсолютно одинаковый асм. То же самое касается и сяшки и раста.</div></div><br>
Разница есть даже между разными компиляторами C++. Rust если и у гонится, то только за счет llvm,  но, насколько мне известно, пока сам компилятор оптимизации на уровне языка особых не делает. В отличие от того же clang. Т.е. только llvm.<br>
За 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-07-27T11:01:39+00:00">27.07.19, 11:01</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805029'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>korvin &#064; <time class="tag-quote__quoted-time" datetime="2019-07-27T09:51:16+00:00">27.07.19, 09:51</time></span><div class='quote '><div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805009'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-26T23:41:37+00:00">26.07.19, 23:41</time></span><div class='quote '>Как в мейнстрим языках. Классы, интерфейсы, наследование и т.п.</div></div><br>
Почему ты считаешь, что оно и только оно — нормальное?</div></div><br>
Нормальное не в смысле &quot;правильное&quot;, а в смысле &quot;привычное&quot;, &quot;обыденное&quot;, как раз &quot;мейнстримные&quot;]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805029</guid>
        <pubDate>Sat, 27 Jul 2019 09:51:16 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805029</link>
        <description><![CDATA[korvin: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805009'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-26T23:41:37+00:00">26.07.19, 23:41</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=386813&amp;view=findpost&amp;p=3805025</guid>
        <pubDate>Sat, 27 Jul 2019 08:56:23 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805025</link>
        <description><![CDATA[applegame: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804389'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-07-22T08:15:16+00:00">22.07.19, 08:15</time></span><div class='quote '>Владение и заимствование в D. Что-то растом запахло </div></div>Тут не запахло, они реально делают это под влиянием идей раста. Правда с вполне конкретной целью. Они хотят библиотечно реализовать всякие RC-контейнеры и хотят сделать это максимально безопасно. Вот и пыжатся, чтобы нельзя было так просто поломать RC.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804403'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-07-22T11:57:56+00:00">22.07.19, 11:57</time></span><div class='quote '>Хз. Если выпилят GC и пойдут по тому же пути, что и раст - управление всеми ресурсами, включая память, через деструкторы, то может и смогут выехать на нормальном метапрограммировании.</div></div>Выпиливать GC никто не будет. Программист сам может выпилить GC если он ему не нужен, или прицепить свой собственный GC. Я тут развлечения ради попиливаю на D мелкую RTOS для микроконтроллеров STM32 с кооперативной многозадачностью, никакого GC очевидно там нет. Другой вопрос, что без GC большая часть стандартной либы отваливается, также отваливается и часть фич самого языка. Они работают над этим, добились довольно серьезного прогресса, надо признать.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804535'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-23T16:46:58+00:00">23.07.19, 16:46</time></span><div class='quote '>Ты про что? Про производительность? Тут за C++ вряд ли кто сможет угнаться.</div></div>Странная фраза. Чего за ним угоняться-то? Компиляторы для эквивалентного кода в плюсах и D генерят абсолютно одинаковый асм. То же самое касается и сяшки и раста.<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804751'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Qraizer &#064; <time class="tag-quote__quoted-time" datetime="2019-07-24T22:43:27+00:00">24.07.19, 22:43</time></span><div class='quote '>Кстати, applegame, всё хочу спросить, но постоянно забываю, так, что даже не помню, спрашивал ли уже: реально ли на D напрограммить полноценные мультиметоды? По идее, его метафичи равноценны плюсовым, так что почему бы и нет.</div></div>Не знаю, что ты подразумеваешь под &quot;полноценные&quot;. Но все, что можно наметапрограммить в плюсах, можно наметапрограммить в D.]]></description>
        <author>applegame</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805009</guid>
        <pubDate>Fri, 26 Jul 2019 23:41:37 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805009</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805005'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>korvin &#064; <time class="tag-quote__quoted-time" datetime="2019-07-26T21:32:25+00:00">26.07.19, 21:32</time></span><div class='quote '><div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804535'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-23T16:46:58+00:00">23.07.19, 16:46</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=386813&amp;view=findpost&amp;p=3805006</guid>
        <pubDate>Fri, 26 Jul 2019 21:47:26 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805006</link>
        <description><![CDATA[Астарот: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3805005'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>korvin &#064; <time class="tag-quote__quoted-time" datetime="2019-07-26T21:32:25+00:00">26.07.19, 21:32</time></span><div class='quote '>В первый раз слышу. Откуда это? </div></div><br>
Есть подозрение, что это про Скалу. Ну, и, разумеется, там пропущено &quot;не&quot;.]]></description>
        <author>Астарот</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805005</guid>
        <pubDate>Fri, 26 Jul 2019 21:32:25 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3805005</link>
        <description><![CDATA[korvin: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804535'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-23T16:46:58+00:00">23.07.19, 16:46</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-07-26T21:33:25+00:00">26.07.19, 21:33</time></span></span><br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804767'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-07-25T05:54:38+00:00">25.07.19, 05:54</time></span><div class='quote '>хаскелевский мем &quot;программа либо компилится, либо работает как надо&quot;</div></div><br>
В первый раз слышу. Откуда это?]]></description>
        <author>korvin</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804767</guid>
        <pubDate>Thu, 25 Jul 2019 05:54:38 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804767</link>
        <description><![CDATA[OpenGL: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804724'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Wound &#064; <time class="tag-quote__quoted-time" datetime="2019-07-24T19:01:17+00:00">24.07.19, 19:01</time></span><div class='quote '>Хотелось бы четко понимать, где Rust или D будут лучше, остальных.</div></div><br>
Это слишком срачегенераторная формулировка вопроса :) Исходить надо из плюсов языка, и уже за их счёт определять, насколько они важны лично для тебя и в твоих проектах. Для раста, например, таковые это строгие статические проверки. В нём у тебя у каждой сущности есть своё время жизни, при взятии ссылок компилятор за всеми временами жизни следит и, если обнаруживается несоответствие, отказываться компилить. Это даёт возможность выражать в дизайне API условия навроде &quot;вектор нельзя изменять пока есть итераторы на него&quot;. Также есть инструменты, позволяющие сказать, что некий класс нельзя юзать из другого потока. Например, класс Rc, который является аналогом плюсового shared_ptr, но без атомарного счётчика ссылок, очевидно, нельзя заюзать не в том потоке, в котором ты его создал, и не даст тебе сделать это именно компилятор, а не рантайм. Из минусов (хотя это и плюс тоже :) ) всего этого - необходимо лучше продумывать архитектуру и чётко понимать, кто кем у тебя должен владеть, так что для &quot;херак и в продакшн&quot; раст не годится совершенно. И в итоге всё это делает хаскелевский мем &quot;программа либо компилится, либо работает как надо&quot; в какой-то степени верным и для раста. За D не скажу подробно, это <strong class='tag-b'>applegame</strong> надо звать, либо читать тему с самого начала.]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804751</guid>
        <pubDate>Wed, 24 Jul 2019 22:43:27 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804751</link>
        <description><![CDATA[Qraizer: Кстати, <strong class='tag-b'>applegame</strong>, всё хочу спросить, но постоянно забываю, так, что даже не помню, спрашивал ли уже: реально ли на D напрограммить полноценные мультиметоды? По идее, его метафичи равноценны плюсовым, так что почему бы и нет.]]></description>
        <author>Qraizer</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804724</guid>
        <pubDate>Wed, 24 Jul 2019 19:01:17 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804724</link>
        <description><![CDATA[Wound: А какая у этих языков ниша? <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-07-24T19:03:36+00:00">24.07.19, 19:03</time></span></span><br>
Хотелось бы четко понимать, где Rust или D будут лучше, остальных. Или это просто для релакса языки?]]></description>
        <author>Wound</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804720</guid>
        <pubDate>Wed, 24 Jul 2019 18:35:40 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804720</link>
        <description><![CDATA[D_KEY: Да, я сначала сюда кинул, а потом прочел :)]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804718</guid>
        <pubDate>Wed, 24 Jul 2019 18:27:15 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804718</link>
        <description><![CDATA[OpenGL: Оригинал 2015 года :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-07-24T18:30:14+00:00">24.07.19, 18:30</time></span></span><br>
Думаю, где я видел шутку про &quot;день ног&quot; в программировании. Оказывается, я уже читал <a class='tag-url' href='https://habr.com/ru/post/275801/' target='_blank'>перевод ответа</a> на эту статью Александреску :D]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804717</guid>
        <pubDate>Wed, 24 Jul 2019 18:23:52 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804717</link>
        <description><![CDATA[D_KEY: Александреску(перевод на Хабре)<br>
<a class='tag-url' href='https://m.habr.com/ru/post/460989/' target='_blank'>Какой язык — D, Go или Rust имеет лучшие перспективы заменить C и почему?</a>]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804715</guid>
        <pubDate>Wed, 24 Jul 2019 18:20:41 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804715</link>
        <description><![CDATA[OpenGL: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804712'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-24T17:51:04+00:00">24.07.19, 17:51</time></span><div class='quote '>Или это норм?  </div></div><br>
Я не знаю  :-? Это вычисление цифр числа пи, и в сишных исходниках тоже юзается gmp. Странный какой-то тест.]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804712</guid>
        <pubDate>Wed, 24 Jul 2019 17:51:04 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804712</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804709'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-07-24T17:42:01+00:00">24.07.19, 17:42</time></span><div class='quote '>unsafe там только для использования gmp юзается в одном тесте.</div></div><br>
gmp как бы сишная либа :) Даже с asm местами.<br>
Или это норм? :) <br>
Там ещё в коде почему-то делают &quot;сишные&quot; структуры через #[repr&copy;]. Интересно, зачем?<br>
<br>
Надо будет как-нибудь таки потакать палочкой.]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804709</guid>
        <pubDate>Wed, 24 Jul 2019 17:42:01 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804709</link>
        <description><![CDATA[OpenGL: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804700'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-24T17:25:21+00:00">24.07.19, 17:25</time></span><div class='quote '>Мне лень смотреть, но скорее всего на крестах код написан так себе, а в коде на rust полно unsafe. </div></div><br>
Правильно, зачем бегло посмотреть в течение 10 секунд, если за пять можно сгенерировать глупое предположение? :D unsafe там только для использования gmp юзается в одном тесте.<br>
<br>
<div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804700'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-24T17:25:21+00:00">24.07.19, 17:25</time></span><div class='quote '>А там сравнивают с gcc. Это вообще может быть фактически тест gcc vs llvm  </div></div><br>
Вот это, вероятно, более состоятельный аргумент.]]></description>
        <author>OpenGL</author>
        <category>Holy Wars</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804700</guid>
        <pubDate>Wed, 24 Jul 2019 17:25:21 +0000</pubDate>
        <title>D vs C++</title>
        <link>https://forum.sources.ru/index.php?showtopic=386813&amp;view=findpost&amp;p=3804700</link>
        <description><![CDATA[D_KEY: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804697'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>OpenGL &#064; <time class="tag-quote__quoted-time" datetime="2019-07-24T17:17:56+00:00">24.07.19, 17:17</time></span><div class='quote '><div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=386813&view=findpost&p=3804535'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>D_KEY &#064; <time class="tag-quote__quoted-time" datetime="2019-07-23T16:46:58+00:00">23.07.19, 16:46</time></span><div class='quote '>Тут за C++ вряд ли кто сможет угнаться.</div></div><br>
И всё же местами раст оказывается <a class='tag-url' href='https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/rust.html' target='_blank'>быстрее</a>.</div></div><br>
Мне лень смотреть, но скорее всего на крестах код написан так себе, а в коде на rust полно unsafe. Насколько я понимаю, сам раст мало делает оптимизаций и там она идет на уровне llvm. И если это так, то странно было бы ожидать от раста производительности си или крестов. <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-07-24T17:27:17+00:00">24.07.19, 17:27</time></span></span><br>
А там сравнивают с gcc. Это вообще может быть фактически тест gcc vs llvm :) <br>
Честнее сравнить с clang на той же версии llvm.]]></description>
        <author>D_KEY</author>
        <category>Holy Wars</category>
      </item>
	
      </channel>
      </rss>
	