Looking forward to Git 2.56 – and 3.0
Git 2.56 and 3.0 are upcoming versions of the popular version control system. The development community is anticipating new features and improvements in these releases. (lwn.net)
A concise comic-style overview argues that binary IEEE floating point isn’t the only way to represent real numbers; several practical alternatives exist, most implemented in software, which makes them slower but accessible through language libraries. The piece emphasizes that different numeric needs - exactness, decimal alignment, symbolic manipulation, or error tracking - motivate different representations and tradeoffs, and it frames these options as tools programmers can pick depending on their problem rather than flaws in floating point itself.
Five concrete alternatives are summarized with what matters about each: decimal floating point (base-10 variants that follow IEEE 754, used via Python’s decimal module or Java’s BigDecimal) preserves decimal exactness for financial and textual decimal data; fractions (exact rationals, e.g., Python’s fractions or native Lisp rationals) give precise arithmetic like 1/10 + 2/10 = 3/10; symbolic computation represents expressions exactly (sqrt(2) instead of a numeric approximation) as in Mathematica, Maple, or sympy; interval arithmetic stores values as ranges to track error bounds and guaranteed results; and binary-coded decimal, an older IBM approach still seen in legacy formats like ISO 8583, stores decimal digits directly. Each option is positioned with its typical use cases and implementation tradeoffs.
Summary generated by AI from the linked article. hn.today is not affiliated with Hacker News or Y Combinator.
Git 2.56 and 3.0 are upcoming versions of the popular version control system. The development community is anticipating new features and improvements in these releases. (lwn.net)
Markdown is increasingly becoming the primary source code, stored alongside the actual code it generates. This shift means that code and tests should be derived from Markdown, which acts as the definitive record of software systems. (htmx.org)
Linear reworked its CI system to address bottlenecks caused by AI-driven code validation, reducing wait times from over 6 minutes to just above 5 minutes. They achieved this by upgrading infrastructure, optimizing jobs, reducing setup redundancies, and making test execution more efficient. (linear.app)
Foremerge is a tool that detects conflicts between parallel coding agents to improve collaboration. It helps developers manage intent conflicts during AI-assisted code creation. (github.com)
SQLBraid allows developers to write SQL directly in TypeScript without using a query-builder DSL. It aims to simplify SQL integration for TypeScript projects. (github.com)
A tutorial demonstrates how to create a shader from scratch in Godot 4. It covers the basics of shader programming within the Godot game engine. (gdquest.com)
Today's best Hacker News stories, summarized and screenshotted, one email a day.