C++ Benchmark – std::list VS boost::intrusive::list

Boost Logo

Recently, we saw that the std::list performance was not really good when it comes to searching it or iterating through it.In this post, we will see an alternative to the std::list: the boost::intrusive::list from the Boost C++ libraries. It is not a well known library but it can be useful in some specific cases. I [...]



Run your Boost Tests in parallel with CMake

CMake

I was looking for a Test Library to run eddic tests in parallel to replace Boost Test Library. I posted my question on StackOverflow and an awesome solution has been posted. With CMake and a little CMake additional file, it is possible to run the tests written with Boost Test Library in parallel without changing [...]



Manage command-line options with Boost Program Options

Boost Logo

In command-line program, we often faces problems with the management of command-line options. When you have a few options, it’s not a problem. But when writing complex programs with tens of options (or hundreds), it starts to be too complicated to manage by hand. That’s where Boost Program Options enters the game! Boost Program Options [...]



Use Boost enable_if to handle ambiguous function overload return types

Boost Logo

The title is not really clear but I didn’t found a better one. The example will be clearer (I hope). In EDDI, I had this little function : For the record, this function is only invoking a specific operator of a visitor. The problem was that I wanted this function to handle also non-void visitors. [...]



Boost 1.48.0 has been released

Boost Logo

A new version of Boost is available : Boost 1.48.0 This release includes three new libraries : Locale, Container and Move. A lot of bug have been fixed and there are also some changes in the existing libraries.



Boost intrusive_ptr : faster shared pointer

Boost Logo

This post will present the Boost intrusive_ptr and its usage in C++ programming. Recently, I took some time to optimize the parsing performances of the EDDI Compiler. The parsing phase creates a lot of nodes to fill the Abstract Syntax Tree. One of the way I found was to replace some shared_ptr by some intrusive_ptr [...]



eddic 0.5.1 : Better assembly generation and faster parsing

I’m very pleased to release the version 0.5.1 of the EDDI Compiler. It makes now a long time since the last version of eddic, but I started again working frequently on it. This version doesn’t add any new feature to the language, but there are a lot of improvements in the compiler itself. First of [...]



Diploma Thesis : Inlining Assistance for large-scale object-oriented applications

Results on CLang

One month ago, my diploma thesis has been accepted and I got my Bachelor of Science in Computer Science. I made my diploma thesis at Lawrence Berkeley National Laboratory, Berkeley, California. I was in the team responsible of the developmenet of the ATLAS Software for the LHC in Cern. The title of my thesis is [...]