1作者: alexandratabone6 个月前原帖
当人们谈论可能取代C语言的编程语言时,Algol 68并不常被提及,但它其实应该被关注。 Algol 68于1968年由国际计算机协会(IFIP)标准化,是Algol 60的继任者,拥有更丰富的类型系统、正交设计以及现代语言中仍然可以看到的特性:用户定义类型、灵活数组、结构化控制流,甚至在某些实现中还包含内置的并发原语。它也能够进行低级系统工作,如直接内存访问、指针运算和位运算,但具有更严格的类型检查,并且在某些编译器中进行了边界检查。 曾有过严肃的尝试将其用于实际系统:在IBM大型机上使用的FLACC编译器、在ICL 1900系列上的Algol 68R,甚至在大学进行的操作系统内核实验。当时的基准测试有时在同一硬件上与C语言相匹配或超越。 那么,为什么它会逐渐被遗忘呢?该语言的报告被认为极其晦涩(根据Dijkstra的说法是“智力灾难”),早期的编译器速度慢且不完整,而到了70年代中期,Unix和C语言已经获得了巨大的势头。Algol 68从未获得像C语言那样的工具、库或市场推广。 现在回头看,Rust和Zig所受到的赞誉——严格的类型、内存安全选项、清晰的并行语法——在50多年前的Algol 68中就已经存在。它只是没有赢得流行度的竞争。
1作者: Forgret6 个月前原帖
我构建了一个小型的、仅包含头文件的 C 库,用于解析 ZIP 压缩文件,且没有外部依赖。 它可以在从嵌入式设备到桌面游戏的各种平台上运行,并支持“存储”和“压缩”两种方式。 <p>基准测试(Core i7-12700K,32GB RAM): - 解压 1GB:0.8秒(比 miniz 快 2.1 倍) - 解析 10 万个文件:12 毫秒(快 3.2 倍) - 1GB 的 CRC32:0.2 秒(快 5.5 倍) <p>GitHub: https://github.com/Ferki-git-creator/stb-zip <p>采用 MIT 许可证,欢迎反馈。