<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[FunctionalPlus - helps you write concise and readable C++ code]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>bei der Arbeit an meinen normalen Projekten sind ein paar Funktionen zusammengekommen, die ich immer wieder mal benötigt habe. Jetzt hab ich mir gedacht, dass ich das ganze auch veröffentlichen könnte, also hier ist es: <a href="https://github.com/Dobiasd/FunctionalPlus" rel="nofollow">https://github.com/Dobiasd/FunctionalPlus</a></p>
<p>Über feedback würde ich mich sehr freuen. Das ist meine erst lib und ich würde sie gerne verbessern und dazulernen.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/335527/functionalplus-helps-you-write-concise-and-readable-c-code</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Apr 2026 10:22:09 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/335527.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 24 Nov 2015 17:41:14 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to FunctionalPlus - helps you write concise and readable C++ code on Tue, 24 Nov 2015 17:41:14 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>bei der Arbeit an meinen normalen Projekten sind ein paar Funktionen zusammengekommen, die ich immer wieder mal benötigt habe. Jetzt hab ich mir gedacht, dass ich das ganze auch veröffentlichen könnte, also hier ist es: <a href="https://github.com/Dobiasd/FunctionalPlus" rel="nofollow">https://github.com/Dobiasd/FunctionalPlus</a></p>
<p>Über feedback würde ich mich sehr freuen. Das ist meine erst lib und ich würde sie gerne verbessern und dazulernen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2476907</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2476907</guid><dc:creator><![CDATA[Dobi]]></dc:creator><pubDate>Tue, 24 Nov 2015 17:41:14 GMT</pubDate></item><item><title><![CDATA[Reply to FunctionalPlus - helps you write concise and readable C++ code on Tue, 24 Nov 2015 18:31:03 GMT]]></title><description><![CDATA[<p>Ich habe mir deine Library jetzt nicht im Detail angeschaut, aber es scheint mir ähnliche Sachen zu tun wie <a href="http://www.boost.org/doc/libs/1_59_0/libs/range/doc/html/index.html" rel="nofollow">boost range</a> oder das neuere <a href="https://github.com/ericniebler/range-v3" rel="nofollow">range-v3</a> von Eric Niebler, welches eventuell mal STL Version 2 werden soll. Nur das deine Library immer Kopien von den Containern macht (schien zumindest bei den paar Beispielen die ich mir angeschaut habe).</p>
<p>Die Namensgebung könnte an manchen Stellen auch besser sein. In deinem Silent Night Beispiel habe ich immer noch nicht verstanden was <code>AllBy</code> machen soll.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2476913</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2476913</guid><dc:creator><![CDATA[sebi707]]></dc:creator><pubDate>Tue, 24 Nov 2015 18:31:03 GMT</pubDate></item><item><title><![CDATA[Reply to FunctionalPlus - helps you write concise and readable C++ code on Wed, 25 Nov 2015 11:22:34 GMT]]></title><description><![CDATA[<p>Vielen Dank fürs feedback. <a href="https://github.com/Dobiasd/FunctionalPlus/blob/28cc07ac1776524cb58f227817952acc1237f7d3/include/FunctionalPlus/ContainerProperties.h#L20" rel="nofollow">AllBy</a> macht das gleiche wie <a href="http://zvon.org/other/haskell/Outputprelude/all_f.html" rel="nofollow">All</a>, nur dass es die Elemente erstmal durch ein unäres Prädikat schickt. Hab diese Erklärung jetzt in die README mit aufgenommen.</p>
<p>Das mit den Kopien habe ich gemacht, weil ich zumindest in den Code-Teilen, die nicht performance-kritisch sind, möglichst pure programmiere und lieber neue Objekte erzeuge als vorhandere zu mutieren.</p>
<p>range-v3 sieht interessant aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2476914</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2476914</guid><dc:creator><![CDATA[Dobi]]></dc:creator><pubDate>Wed, 25 Nov 2015 11:22:34 GMT</pubDate></item><item><title><![CDATA[Reply to FunctionalPlus - helps you write concise and readable C++ code on Tue, 24 Nov 2015 18:49:28 GMT]]></title><description><![CDATA[<p><a href="https://github.com/Dobiasd/FunctionalPlus#performance" rel="nofollow">https://github.com/Dobiasd/FunctionalPlus#performance</a></p>
<p>Bitte Messcode zeigen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2476916</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2476916</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Tue, 24 Nov 2015 18:49:28 GMT</pubDate></item><item><title><![CDATA[Reply to FunctionalPlus - helps you write concise and readable C++ code on Tue, 24 Nov 2015 18:51:19 GMT]]></title><description><![CDATA[<p>Dobi schrieb:</p>
<blockquote>
<p>Das mit den Kopien habe ich gemacht, weil ich zumindest in den Code-Teilen, die nicht performance-kritisch sind, möglichst pure programmiere und lieber neue Objekte erzeuge als vorhandere zu mutieren.</p>
</blockquote>
<p>Das ist ja gerade der Witz bei den von mir verlinkten Libraries. Viele Operationen muss man gar nicht sofort anwenden, sondern kann dies erst beim Iterieren über die Elemente tun. Einfache Beispiele sind Werte weglassen oder hinzufügen. Ich brauch keine Kopie der Daten sondern nur ein Iterator der schlau genug ist die nicht benötigten Werte zu überspringen. Da die komplette Implementierung der beiden Ranges Libraries aber sicherlich äußerst kompliziert ist, ist es schon OK, dass du Kopien machst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2476917</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2476917</guid><dc:creator><![CDATA[sebi707]]></dc:creator><pubDate>Tue, 24 Nov 2015 18:51:19 GMT</pubDate></item><item><title><![CDATA[Reply to FunctionalPlus - helps you write concise and readable C++ code on Wed, 25 Nov 2015 11:21:59 GMT]]></title><description><![CDATA[<p>@Sebi: OK, das ist natürlich wesentlich cooler. Ist ja schon eine Art lazy evaluation.</p>
<p>Arcoth schrieb:</p>
<blockquote>
<p><a href="https://github.com/Dobiasd/FunctionalPlus#performance" rel="nofollow">https://github.com/Dobiasd/FunctionalPlus#performance</a><br />
Bitte Messcode zeigen.</p>
</blockquote>
<p><a href="https://github.com/Dobiasd/FunctionalPlus/blob/6cdf23dd9e7a8149a9e651488cd503cb2e8ed421/test/tests.cpp#L690" rel="nofollow">https://github.com/Dobiasd/FunctionalPlus/blob/6cdf23dd9e7a8149a9e651488cd503cb2e8ed421/test/tests.cpp#L690</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2476918</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2476918</guid><dc:creator><![CDATA[Dobi]]></dc:creator><pubDate>Wed, 25 Nov 2015 11:21:59 GMT</pubDate></item></channel></rss>