1作者: basepurpose8 个月前
一个有趣又强大的机器,它能“烧掉”破折号(—),并用逗号来代替它们。
1作者: chaokunyang8 个月前
一个有趣的序列化框架,性能数据如下:在嵌套对象上,速度比 JSON/protobuf 快 10-20 倍。 技术方案:编译时代码生成(无反射),紧凑的二进制协议,元数据打包,小端序布局,针对现代 CPU 优化。 其他快速序列化器所不具备的独特功能: - 无需 IDL 文件即可实现跨语言(Rust ↔ Python/Java/Go) - Trait 对象序列化 (Box<dyn Trait>) - 自动循环引用处理 - 无需协调即可进行模式演进 欢迎讨论设计权衡。 基准测试:https://fory.apache.org/docs/benchmarks/rust
1作者: dakpapa8 个月前
1作者: smatthewaf8 个月前
我一直在做一个项目,它涉及多个代码库,所有代码库都需要在多种地图坐标类型之间进行转换,所以我制作了一个 NPM 模块,它允许你在十进制度、度-分和度-分-秒坐标类型之间进行解析和转换。小众吗?是的。有用吗?也很有用(我希望如此)!
2作者: sixddc8 个月前
用 Lua 构建了一个原生的 Scratch 3.0 运行时,可以在没有浏览器的情况下运行 .sb3 项目。 为什么? 浏览器沙盒阻止访问硬件功能(触觉反馈、传感器、细粒度性能控制)。原生运行时允许你直接访问硬件,并可以部署到游戏机、掌机、嵌入式设备。这也意味着更小的二进制文件(LÖVE 大约 7MB,而 Electron 需要 50-100MB)。 工作原理: - Scratch 积木块编译成中间表示(IR),然后优化,最后生成 Lua 代码 - LuaJIT 执行编译后的代码 - 基于协程的线程,用于并发脚本 - 惰性加载 + LRU 缓存,用于内存管理 - 通过 resvg FFI 支持 SVG 与 Scratch 3.0 积木块的兼容性约为 100%。需要 JavaScript 的扩展将无法工作(没有音乐、TTS、视频侦测),但核心积木块都存在。 基于 LÖVE 框架构建,因此具有跨平台特性(桌面、移动设备、游戏设备)。 目前还不太完善(尚未实现用户输入,云变量仅在本地有效),但它现在可以运行真实的 Scratch 项目。
1作者: drakyoko8 个月前
嘿,HN, 周末我开发了一个小的 VS Code 扩展,它允许你运行/调试 Go 表格测试中的单个子测试——这是我经常希望官方扩展支持的功能。 与我见过的其他扩展不同,它不仅仅依赖于正则表达式和假设的字段名,而是通过跟踪 testing.T 引用进行一些结构分析。 如果你是一名 Go 开发者,并且觉得这有用,我很乐意听取你的反馈!