Category Archives: Vala

Lock-free collection in libgee: hazard pointer

From version 0.8 libgee have support for lock-free collections. While they can be used as a drop-in replacement for any other there are a few ‘gotchas’ that user needs to be aware of if (s)he wants to use them efficiently, … Continue reading

Posted in Libgee | Tagged , , , | Leave a comment

Libraries in Vala – ABI compatibility – part II

In previous post I’ve described what ABI is. Now the time for potential problems which you can run into with Vala – unfortunately the list might not complete so please threat it as a guideline rather than definite description. For … Continue reading

Posted in Vala | Tagged , | Leave a comment

Pre-announcing VaLLVM

Curently Vala simply generates C code and let the C compiler do its job. While in many cases it produces good code there are some cases which where compiler stack could use more domain-specific knowledge. The problem is that C … Continue reading

Posted in Programming, Vala | Tagged , | 11 Comments

Libraries in Vala – ABI compatibility – part I

As described before Vala have quite interesting mix of high and low-level features. One of elements one need to be aware in Vala is that there is an ABI, when the “ABI compatibility” is needed and how to keep it. … Continue reading

Posted in GNOME, GNU/Linux, Vala | Tagged , | 1 Comment

Futures and promises in libgee

In recent unstable releases of libgee contains Futures and Promises (please note that API is still not frozen so the exact details may change). Future in a simples case is a value which might not be currently available. From the … Continue reading

Posted in Libgee, Programming | Tagged , , , | Leave a comment

Vala ABI and branch prediction

Maintaining Libgee for some time I run into interesting phenomena – performance did not behave in a way most people would expect. When the highier-order functions were planned it was pointed out that Vala doesn’t have complex inlining required for … Continue reading

Posted in GNOME, GNU/Linux, Vala | Tagged , , , | 1 Comment