A Quest to Find a Highly Compressed Emoji :shortcode: Lookup Function

Have you ever wondered what’s the smallest amount of static storage (code + data) needed to map emoji :shortcodes: to emoji?

Probably not… but now that I’ve posed the question, aren’t you at least a little curious what the answer might be?

So hey, if you’ve got some time to spare, why not stick around a while and learn a bit about cool topics such as perfect hashing, probabilistic data structures, and 2D dynamic programming algorithms?

Take a break from solving whatever “important problem” you’re working on, kick back, relax, and join me on my [somewhat useless] quest to find a highly compressed emoji :shortcode: lookup function!

A GIF of the online demo

Thanks to the power of WebAssembly, you can play with the final result right from your browser!

—-> Check out the online demo! <—–

Read more →

The C Standard Library Is Not Dependency Free

Like any great systems programming language, it doesn’t take much of anything to get C up and running on a new platform.

In fact, a minimal C “runtime” (typically called crt0) only consists of a short prelude that zeroes out the .bss section and hands off execution to main.

That’s it!

Compared to other popular programming languages, which require substantial runtime machinery to operate (e.g: Java’s virtual machine, Go’s garbage collector, etc…), C’s extremely minimal approach to language design has allowed it to run on just about any platform.

Unfortunately, while C is effectively dependency free at the language level, the same can’t be said about its standard library.

Read more →

Paravirtualized Devices in crosvm - a Performance Panacea for Modern VMs

Paravirtualized devices enable modern VMs to reach near-native speeds in IO heavy workloads such as file access, networking, and graphics processing. In a nutshell, by informing a virtualized OS of the fact that it’s running within a VM, the virtualized OS can use special drivers that directly communicate and cooperate with the host OS, resulting in some incredible performance gains!
Read more →