C++Guns – RoboBlog

10.12.2017

CAD/CAM heightmap

Filed under: Allgemein — Thomas @ 17:12

Ich hab mal versucht aus einem 3D Modell [1] eine Heightmap zu erzeugen. Pro CM werden 10 Pixel abgebildet. Sagt's mir ob's gelunden ist. [1] https://www.thingiverse.com/thing:32216/#files

23.11.2017

C++ Guns: RE: Abstraction design and implementation: `repeat` Teil 2

Filed under: Allgemein — Tags: — Thomas @ 19:11

In Teil 1 ging es um die allgemeinen Probleme einer simplen for() Schleife. In Teil 2 werde ich Vittorio Romeo Ansatz verfolgen, eine repeat() Funktion zu erstellen, die eine Funktion f genau N mal aufruft. Syntaktisch und semantisch würde ich diesen Code okay finden: Die Funktion f wird einfach 10 mal aufgerufen. Das war einfach. […]

C++ Guns: RE: Abstraction design and implementation: `repeat` Teil 1

Filed under: Allgemein — Tags: — Thomas @ 17:11

Hallo, ich möchte hier ein paar Gedanken äußern zu dem tollen Artikel "abstraction design and implementation: `repeat`" von Vittorio Romeo [1]. Sein Ziel ist es eine simple for() Schleife, wie wir sie schon alle hingeschrieben haben, zu nehmen und zu verbessern. Das Problem bei einer voll ausgeschriebenen for() Schleife ist, dass sie zeigt WAS alles […]

02.11.2017

C++ Guns - Addressen von Referenzen

Filed under: Allgemein — Tags: — Thomas @ 12:11

Haben Referenzen in C++ eigene Adressen, so wie normale Variablen und Pointer, oder haben sie nur die Adresse der referenzierten Variablen? Wenn Referenzen eigene Adressen besitzen, existieren sie wie normale Variablen im RAM. Ich meine mich aber erinnert zu haben, dass eine Referenz nur ein Alias für eine andere Variable ist. Einfach nur syntactic sugar […]

27.10.2017

C++ Guns - multi derived CRTP - more pain

Filed under: Allgemein — Tags: — Thomas @ 19:10

And because we love pain, here come the CRTP diamond derive. Have fun with these. (no, don't) UltraBase Base Child UltraBase Base2 Child2

C++ Guns - multi derived CRTP

Filed under: Allgemein — Tags: — Thomas @ 19:10

As we all know, CRTP is bad. The reasons against you can read on my unpublish Artikel "Why CRTP is a bad choise". Nevermind. Here come a CRTP with a linear derived chain. Base Base2 Child

24.09.2017

C++ Guns - Settings class

Filed under: Allgemein — Tags: — Thomas @ 11:09

Für das nächste große Projekt will ich Einstellungen aus einer Datei lesen und in Performance kritischen Codeabschnitt nutzen. Die Variablen sollen read-only, also const, sein. So wird ein versehentlichen verändern der Einstellungen verhindert und der Compileroptimierer freut sich auch. Auf getter-Funktionen möchte ich wegen unnötigen Code verzichten. Wenige Variablen werden besonders häufig benutzt, daher soll […]

12.09.2017

C++ Guns - Missed optimizations

Filed under: Allgemein — Tags: , — Thomas @ 02:09

Compiler sind nicht perfekt. Gerade das Optimieren von Code ist so komplex, dass es keinen Algorithmus dafür gibt. Ehr werden Heuristiken dafür benutzt. So kommt es schon mal vor, dass bei banal aussehenden Code die Compiler Optimierung versagt hat und es möglich ist, von Hand schnelleren Assembler Code zu schreiben. In [1] wurde viele solcher […]

08.09.2017

C&P Bug of the Day

Filed under: Allgemein — Tags: — Thomas @ 15:09

Keine Ahnung wie das passiert ist. git diff zeigte es dann. Ich wusste garnicht, dass so etwas überhaupt compiliert. FORTRAN ist scheiße 😀 - ContAdvection(1) = NABLA_U(1,2) + NABLA_U(2,3) + ContAdvection(1) = (1,2) + NABLA_U(2,3)

04.09.2017

C++ Guns - Semantik und concepts - Part 3

Filed under: Allgemein — Tags: — Thomas @ 17:09

Kommen wir nun zu den concepts. Wie anfangs erwähnt, las ich das Paper [1]. Ich erlaube mir hier ein paar Ausschnitte davon zu kommentieren, um meine Motivation zu begründen. A concept has semantics; it means something; it is not just a set of unrelated operations and types. Without an idea of what operations mean and […]

Older Posts »

Powered by WordPress