No Rounding
June 11, 2026
Constructive Calculator is an iPhone calculator that doesn’t round at all. It computes with constructive real numbers: every result is exact, and you can scroll any answer for as many correct digits as you want. What that gives you:
exp(π√163) , Ramanujan’s constant, looks like the integer 262,537,412,640,768,744 . Scroll past the decimal point and you find twelve 9s before it finally diverges.
, Ramanujan’s constant, looks like the integer . Scroll past the decimal point and you find before it finally diverges. exp(100) + 42 − exp(100) returns exactly 42. In IEEE 754 double, exp(100) ≈ 2.7×1043 , and adding 42 changes nothing (42 falls off the bottom of the representation), so the subtraction gives 0. The constructive engine evaluates exp(100) to as many digits as is needed, twice, and the subtraction leaves only 42. The calculator does not simplify the expression first; it does indeed perform both operations as instructed: addition and then subtraction.
It’s made possible by constructive (or computable) real arithmetic: instead of storing a number as a fixed-width approximation, store a function that produces an approximation to any requested precision, and evaluate each subexpression to whatever precision the final answer needs. Hans Boehm built a Java library for this in the 1980s and 90s, and it has been the engine behind Android’s built-in Calculator, a fact that periodically delights Hacker News.
But there was no equivalent on iPhone that I could find, so I built one, by porting Boehm’s engine.
It’s 2026, so I didn’t hand-write the port. I directed Opus 4.8 to translate the source line by line into Swift, and steered the process (architecture, UI, on-device testing, the App Store machinery) over a long back-and-forth.
What got ported:
com.hp.creals , Boehm’s constructive-reals library ( CR , the transcendental functions, the Gauss-Legendre AGM for π), into a Swift package.
... continue reading