返回首页
最新
Fire-Doc 是一款本地 API 调试工具,无需登录或安装——只需打开即可开始使用。它比 Swagger 更加用户友好,比 Postman 更加简单。
当人们谈论可能取代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中就已经存在。它只是没有赢得流行度的竞争。
我构建了一个小型的、仅包含头文件的 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 许可证,欢迎反馈。