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
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
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
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
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
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