Show HN: NES Contra (1987) port (ASM –> C and then C –> WebAssembly)
A browser-based port of the 1987 NES game Contra converts its assembly code to C and then WebAssembly. It supports solo play and online two-player games. (epoyraz.github.io)
The all-pairs shortest-path problem asks computers to estimate or calculate the distance between every pair of points in a network, such as cities linked by roads or devices linked by cables. Exact calculations can become prohibitively expensive as networks grow, so researchers use faster approximation algorithms. A landmark 1996 method, developed by Dor, Halperin, and Zwick, offered nearly optimal running time and a guarantee that estimated distances would be no more than twice the true distance - but only for pairs that were sufficiently far apart. For nearby points, its sampled shortcuts could miss short routes and produce estimates that exceeded that accuracy limit.
Manoj Gupta of the Indian Institute of Technology Gandhinagar has developed a refinement that extends the same two-times accuracy guarantee to closer pairs without increasing the earlier method’s overall computational complexity. Presented at the 2025 Foundations of Computer Science symposium, the work uses a multi-scale sampling strategy: instead of relying on one layer of representative network points, it examines connections at several scales, helping capture short routes that could otherwise be overlooked. The result is a broader range of reliable estimates while retaining the method’s speed. The advance is theoretical rather than an immediate upgrade to a particular navigation or commercial system, but it strengthens tools for analyzing large transportation, communications, biological, and other networks where quick, dependable distance estimates matter.
Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.
A browser-based port of the 1987 NES game Contra converts its assembly code to C and then WebAssembly. It supports solo play and online two-player games. (epoyraz.github.io)
PostgreSQL’s TOAST storage made the table much smaller, and counting or scanning rows was faster than with the larger uncompressed table. But reading a field inside every toasted value required far more buffer reads, showing that TOAST can trade space savings for slower access to large values. (pgedge.com)
Large GROUP BY hash tables cause frequent slow RAM accesses, leaving CPUs stalled even when monitoring shows 100% usage. Processing data in smaller chunks can improve cache use and speed up aggregation, even if it requires more CPU work. (pivotlake.io)
Enlightenment 0.28 adds initial NetBSD support, a NetworkManager module, and native PipeWire mixer support while retaining PulseAudio compatibility. The release also improves window management, display handling, and X11 and Wayland support, alongside numerous fixes and code cleanups. (phoronix.com)
Nonna is a TypeScript dependency-injection framework and ahead-of-time compiler that avoids reflection and runtime dependencies. It supports Node.js, Deno, Bun, edge runtimes, and major frontend frameworks, with request scoping and deterministic lifecycle hooks. (nonna.nodeboot.io)
Jepsen found 96 bugs in ParticleDB versions 1.1.4 through 1.1.18.11.rc-22, including crashes, data loss, and serious transaction anomalies. Most issues were fixed, but committed writes could still disappear and serializable transactions still had anomalies; Orkes says a later release resolves the remaining problems. (jepsen.io)
Today's best Hacker News stories, summarized and screenshotted, one email a day.