Oh good! Someone from the @racketlang community can weigh in on the benefits.

Oh wait…

Anyway, sooner or later the time for computable reals will come. I'm still HODLing stock in continued fractions (and teaching them every year to my first-year students).

@shriramk @racketlang
Continued fractions are fun, but do your favourite algorithms actually terminate if you try to use them to calculate, say, floor(sqrt(2) * sqrt(2))?
@TMakarios @racketlang Yeah, depends on your implementation of all those operations! Nothing beats Mathematica. (-:
@shriramk @racketlang
I guess my point was: If you're relying only on continued fractions, and you have two numbers that begin like [1;2,2,2,…], and you don't know that they're both sqrt(2), and you try to multiply them, you can't even output the integer part of the result at all, unless and until one of them gives you something other than 2 as one of its later terms.
@TMakarios Yep, I understood that. I don't know all the different ways people have figured out arithmetic on them, and it's conceivable there's some representation that manages to collapse this. After all, [1;2,...] has a *representation* that makes clear it's a quadratic irrational, and you could imagine * operating in a way that exploits when you're computing sqrt(n) * sqrt(m) (and especially sqrt(n) * sqrt(n)).
@racketlang

@shriramk @racketlang
Oh, if you're not already familiar with it, you might enjoy reading https://www.tweedledum.com/rwg/cfup.htm . (While I was trying to find it again, I came across https://hsinhaoyu.github.io/cont_frac/ which I haven't read, but which may or may not help to explain the former link.)

But yes, using non–continued fraction representations (possibly as well as using continued fractions in some way) may help, but there's enough undecidability about the reals, and the operations people want to perform on them (see https://en.wikipedia.org/wiki/Richardson%27s_theorem ), that I think there'd still be some cases where we'd have to say something like "either floor(x) = 2 or 2 - ε < x < 2; how small do you want me to make ε before I give up trying to totally rule out floor(x) = 1?".

SAILDART filename CFUP[1,RWG] date 1975.12.01 time 08:08

@TMakarios
Oh, that's really neat — they reconstructed the Gosper notation! Expressing it as tensors is quite a flex (-:. I'll have to read that code a bit more slowly.
@racketlang