Scalable C
“We use C most often to write libraries, which we then call from applications in other languages. This layer of C libraries sits between the operating system and the application. This layer provides...
View ArticleIntroduction to the Autotools (autoconf, automake, and libtool)
“This page has information on the “autotools”, a set of tools for software developers that include at least autoconf, automake, and libtool. The autotools make it easier to distribute source code that...
View ArticleAwesome Machine Learning
“A curated list of awesome Machine Learning frameworks, libraries and software…” https://github.com/josephmisiti/awesome-machine-learning
View Articlenxweb – Fast and Lightweight Web Server for Applications Written in C & Python
“Sometimes web applications need small and fast components that are best written in C. Example: ad banner rotation engine. It gets invoked many times on every page of your site producing little HTML...
View ArticlePython Tutor
Python Tutor, created by Philip Guo, helps people overcome a fundamental barrier to learning programming: understanding what happens as the computer executes each line of a program’s source code. Using...
View ArticleLet’s code a TCP/IP stack, 1: Ethernet & ARP
Writing your own TCP/IP stack may seem like a daunting task. Indeed, TCP has accumulated many specifications over its lifetime of more than thirty years. The core specification, however, is seemingly...
View Articleluna programming language – a small, elegant VM implemented in C
Luna is an expressive, minimalistic, elegant programming language implemented in C. With cooperative thread concurrency at its core, async I/O, and influences derived from languages such as Lua, io,...
View ArticleWhat a C programmer should know about memory
In 2007, Ulrich Drepper wrote a “What every programmer should know about memory”. Yes, it’s a wee long-winded, but it’s worth its salt. Many years and “every programmer should know about” articles...
View ArticleDebugging of CPython processes with gdb
pdb has been, is and probably always will be the bread and butter of Python programmers, when they need to find the root cause of a problem in their applications, as it’s a built-in and easy to use...
View ArticleBuild the future of apps with Xamarin
Xamarin brings open source .NET to mobile development, enabling every developer to build truly native apps for any device in C# and F#. We’re excited for your contributions in continuing our mission to...
View Articlenginx module for Brotli compression
Brotli is a generic-purpose lossless compression algorithm that compresses data using a combination of a modern variant of the LZ77 algorithm, Huffman coding and 2nd order context modeling, with a...
View Article“Lispsy” Lisp(ish) to C Converter (designed for CLISP)
LISP/c is a powerful macrolanguage for C. It basically turns this: (header stdio) (main (@printf (str “Hello, world!”)) (return 0)) into (after it being cleaned up (more on this later)) this: #include...
View ArticleEmbedding PyPy in a C application
At the PyGrunn 2016 conference last Friday I gave a talk about the Python cffi package and how to leverage it to embed PyPy into a C application. A video of this talk will be published later when it...
View ArticleBalde – A microframework for C based on GLib and bad intentions
It is designed to be fast, simple, and memory efficient. Most of its architecture is based on other microframeworks, like Flask, and it can run on any web server that supports SCGI. With balde you can...
View ArticleTrailDB – An Efficient Library for Storing and Processing Event Data
tl;dr Today, we are open-sourcing TrailDB, a core library powering AdRoll. TrailDB makes it fast and fun to handle event data. Find it at traildb.io....
View ArticleYou Can’t Always Hash Pointers in C
Occasionally I’ve needed to key a hash table with C pointers. I don’t care about the contents of the object itself — especially if it might change — just its pointer identity. For example, suppose I’m...
View Articleliblfds, a portable, license-free, lock-free data structure library written in C
Lock-free data structures are process, thread and interrupt safe (i.e. the same data structure instance can be safely used across processes, threads and both inside and outside of interrupt handlers),...
View Articlelibdill: Structured Concurrency for C
Concurrency means that multiple functions can run independently of each another. It can mean that they are running in parallel on multiple CPU cores. It can also mean that they are running on a single...
View ArticleUnderstanding glibc malloc
I always got fascinated by heap memory. Questions such as How heap memory is obtained from kernel? How efficiently memory is managed? Is it managed by kernel or by library or by application itself? Can...
View ArticleBit Twiddling Hacks
Individually, the code snippets here are in the public domain (unless otherwise noted) — feel free to use them however you please. The aggregate collection and descriptions are © 1997-2005 Sean Eron...
View Article