标签
一篇 Corsix.org 博客文章探讨了如何通过用紧凑的偏移表替代指针表来减小枚举转字符串函数的二进制体积,并进一步利用线性近似压缩这些偏移量,再通过一个包含残差的小型查找表来修正近似误差。
一篇由 Rust 程序员撰写的博文,记录了其自学 C 语言过程中遇到的各种奇特行为,包括通过 <stdbool.h> 实现布尔类型、以 null 结尾的字符串与 Rust 中长度前缀的 &str 之间的对比,以及相关的内存权衡。对于从 Rust 转向 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.
我用C从头构建了一个深度学习库,支持张量操作、自动求导和神经网络模块,并用它训练了一个基于莎士比亚数据的小型语言模型。
Fil-C 是一个完全内存安全的 C/C++ 实现,通过 LLVM IR 阶段的不可见能力(invisicaps)将指针值与边界信息捆绑,实现高兼容性,性能损失约 4 倍。
Solod 是 Go 的一个严格子集,可编译为可读的 C11,零运行时,无GC,拥有丰富的标准库,让 Go 开发者获得系统级控制,同时为 C 程序员提供熟悉的工具链。
fmetrics是一个使用C和Zig开发的开源库,用于计算快速的感知图像和视频保真度指标,如IW-SSIM、MS-SSIM、SSIMULACRA2、Butteraugli和CVVDP,并且经过验证与人类评分具有相关性。
一段比较C语言和Haskell之间权衡的引述:C语言优先考虑效率再考虑正确性,而Haskell优先考虑正确性再考虑效率。
BUSY 是一个精简、静态类型、跨平台的构建系统,支持 GCC、Clang 和 MSVC 工具链,旨在易于自举和最小依赖。
Decomp Academy 是一个交互式在线平台,教会用户如何通过编写字节匹配的 C 代码,针对 2001 年 MWCC 编译器生成的真实 PowerPC 汇编输出来反编译 GameCube 游戏。
来自 GoalKicker 的免费编程笔记(PDF)合集,涵盖 Java、Python、JavaScript、SQL、DSA、C 和 C++。
Microcrad 用C语言重新实现了 Karpathy 的 micrograd 自动微分引擎,提供了一个教育性的标量值自动微分库,带有引用计数和小型神经网络,旨在帮助在标量层面理解反向传播。
这个开源教程《Build Your Own Redis》教你手把手从零用C/C++实现一个功能完备的Redis服务器,深入讲解网络编程、数据结构和底层C语言,配有代码和详细说明。