6 private links
Silicon is a high performance, middleware oriented, C++14 http web framework. It brings to C++ the high expressive power of other web frameworks based on dynamic languages without introducing run-time overhead. Its compile-time static metaprogramming paradigm allows to match the performances of servers written in C.
The behavior of malloc(0) is implementation defined by the standard. The two legal possibilities are to return a null pointer or a unique pointer. In many implementations, the second option is accomplished by means of internally increasing the length to 1 (which is then likely rounded up to 16 or so). Legally, one cannot deference this pointer, although in practice some bytes are allocated which means that won’t crash.
Nim (formerly known as "Nimrod") is a statically typed, imperative programming language that tries to give the programmer ultimate power without compromises on runtime efficiency. This means it focuses on compile-time mechanisms in all their various forms.
PeerVPN is a software that builds virtual ethernet networks between multiple computers. Such a virtual network can be useful to facilitate direct communication that applications like file sharing or gaming may need. Often, such direct communication is made impossible or very difficult by firewalls or NAT devices.
A collection of useful .htaccess snippets.
This post walks through a complete, compile time implementation of a Snake game using C++ template metaprogramming.
In our terrestrial view of things, the speed of light seems incredibly fast. But as soon as you view it against the vast distances of the universe, it's unfortunately very slow. This animation illustrates, in realtime, the journey of a photon of light emitted from the surface of the sun and traveling across a portion of the solar system, from a human perspective.
sudo apt-get install --reinstall xorg xserver-xorg xserver-xorg-core xserver-xorg-video-intel libegl1-mesa mesa-utils mesa-utils-extra libegl1-mesa-drivers mesa libgl1-mesa-dev libgl1-mesa-dri libgl1-mesa-glx xserver-xorg-video-all xserver-xorg-video-nvidia xserver-common
sudo dpkg -l|grep nvidia|cut -d" " -f3 |tr "\n" " ">/tmp/t
sudo apt-get remove --purge cat /tmp/t
sudo nvidia-uninstall
sudo apt-get remove --purge bumblebee
sudo apt-get purge xserver-xorg-video-nvidia
sudo apt-get install --reinstall xorg xserver-xorg xserver-xorg-core xserver-xorg-video-intel libegl1-mesa mesa-utils mesa-utils-extra libegl1-mesa-drivers mesa libgl1-mesa-dev libgl1-mesa-dri libgl1-mesa-glx xserver-xorg-video-all xserver-xorg-video-nvidia xserver-common
In languages such as python, there is an in operator that is used to check if element is in a range:
if 5 in [1, 2, 3, 4, 5]: print("There is a 5")
What’s nice about this, is the almost english type readability of it. Let’s look at how we can implement such an operator in C++14.
Named operator made easy:
https://github.com/klmr/named-operator
This is an advanced blog post more geared to library writers who want to improve error messages due to substitution failure. It discuss how substitution failures can be transported so the correct information can be presented to the user. Lets first look at the problem.