Tag
A Corsix.org blog post explores reducing binary size for enum-to-string conversion functions by replacing pointer tables with compact offset tables, and further compressing those offsets using a linear approximation corrected by a small lookup table of residuals.
A discussion on Lobsters about enabling QML (Qt's declarative UI language) for C and Zig, covering bindings and tooling for these languages.
A Lobsters discussion about techniques for calling a function in C without directly naming it, covering low-level language tricks and compiler/linker behavior.
A blog post by a Rust programmer detailing quirky C language behaviors learned while self-teaching C, including booleans via <stdbool.h>, null-terminated strings versus Rust's length-prefixed &str, and related memory trade-offs. It serves as a practical companion guide for developers transitioning from Rust to C.
博客文章指出整数与浮点算术遵循不同范式:整数运算需在灾难发生前预防溢出,而 IEEE-754 浮点运算中的 NaN 与无穷值会自然传播,不应照搬预防式检查(如用零分母或 FLT_EPSILON 守卫),这些检查在多数场景下无效且被 LLM 频繁写错。
The author argues that despite the common call to break ABI to save C++, preserving a stable ABI is necessary to allow C to evolve, and discusses the trade-offs and constraints ABI stability imposes on language and standard library improvements.
I built a deep learning library in C from scratch that supports tensor operations, autograd, and neural network modules, and used it to train a tiny language model on Shakespeare data.
A tool that packages existing C/C++ projects for use with the Zig build system, enabling easier integration.
The article critiques memory safety absolutism in programming language debates, arguing that new approaches like Fil-C have trade-offs and that dismissing Rust as unsafe ignores practical benefits.
Fil-C is a fully memory-safe implementation of C/C++. It bundles pointer values with boundary information using invisicaps at the LLVM IR stage, achieving high compatibility with a performance penalty of about 4x.
A critique of null-terminated strings in C, arguing that length-based strings are superior for modern programming, leading to fewer bugs and better performance.
Solod is a strict subset of Go that compiles to readable C11 with zero runtime, no GC, and rich standard library, enabling systems-level control for Go developers and familiar tooling for C programmers.
fmetrics is an open-source library in C and Zig for computing fast perceptual image and video fidelity metrics such as IW-SSIM, MS-SSIM, SSIMULACRA2, Butteraugli, and CVVDP, with validated correlation to human ratings.
A quote comparing the trade-offs between C and Haskell: C prioritizes efficiency first then correctness, while Haskell prioritizes correctness then efficiency.
BUSY is a lean, statically typed, cross-platform build system for GCC, Clang, and MSVC toolchains, designed for easy bootstrapping and minimal dependencies.
Decomp Academy is an interactive online platform that teaches users how to decompile GameCube games by writing byte-matching C code against real PowerPC assembly output from the 2001 MWCC compiler.
A collection of free programming notes (PDFs) for Java, Python, JavaScript, SQL, DSA, C, and C++ from GoalKicker.
Microcrad reimplements Karpathy's micrograd autograd engine in C, providing an educational scalar-valued automatic differentiation library with reference counting and a small neural network, aimed at understanding backpropagation at the scalar level.
This open-source tutorial 'Build Your Own Redis' teaches you to implement a fully functional Redis server from scratch using C/C++, with in-depth explanations of network programming, data structures, and low-level C, accompanied by code and detailed instructions.
An analysis of how memory safety CVEs are reported differently in Rust vs C/C++, arguing that Rust's design reduces certain classes of vulnerabilities even when bugs exist.