你这个周末打算做什么?

Lobsters Hottest 新闻

摘要

一位开发者分享了将 Marginalia 搜索的倒排索引从 Java 移植到 C++ 的进展,指出代码的表达能力有所提升,行数可能减半,而 std::span 在处理连续内存时非常实用。

<p>欢迎分享你这个周末的计划,也可以寻求帮助或反馈。</p> <p>请记住,什么都不做也完全没问题!</p>
查看原文
查看缓存全文

缓存时间: 2026/10/16 10:43

# 你这个周末打算做什么? 来源:https://lobste.rs/s/hounpx/what_are_you_doing_this_weekend 还在折腾把 marginalia 的索引移植到 C\+\+ 的事。目前正在移植倒排索引的核心底层结构,可以说这正是 Java 最让人束手束脚的地方。我推进得相当慢,因为在移植过程中,有很多机会可以让代码表达得更清晰。等我完成时,整个代码量即使缩减到原来的一半,我也不会惊讶,而通常 C\+\+ 才是更啰嗦的语言。目前我已经可以开始做一些完整性测试了,这很好,因为现在我可以在 1000 行技术细节极其复杂的代码里大海捞针般地找 bug 了。 好在我大概可以直接移植之前为 Java 实现编写的那套庞大的测试,它对这段代码中各种细微边界情况的测试都非常全面。 另外,我非常喜欢 std::span。由于这段代码处理的几乎全是连续的内存区域,std::span 用得越多,整个代码就越简洁。

相似文章

你这个周末打算做什么?

Lobsters Hottest

一位开发者分享了他这个周末的项目,即构建一种编译为WebAssembly的低级中缀语言,并提供了从上下文自动补全到前沿模型等AI编码工具的个人排名。

这个周末你打算做什么?

Lobsters Hottest

一位开发者描述了将《完美黑暗64》关卡移植到 noclip.website 的过程,强调了读取 N64 显示列表和重新实现渲染引擎的挑战。

你这周在做什么?

Lobsters Hottest

一位开发者分享了可嵌入类型化语言 Ekto 的最新进展,该语言受 Lua、Koka 和 Erlang 启发,并讨论了为 Casper VM 实现引用计数、内存管理及有界续体时面临的挑战。

优化Markdown解析器的内存使用

Lobsters Hottest

这篇博客文章详细介绍了优化C++ Markdown解析器内存使用的技术,通过arena分配和指针压缩,将AST节点大小从232字节显著减少到16字节,同时保持解析速度。