frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: val – An arbitrary precision calculator language

https://github.com/terror/val
34•crap•9mo ago
Wrote this to learn more about the `chumsky` parser combinator library, rustyline, and the `ariadne` error reporting crate.

Such a nice DX combo for writing new languages.

Still a work in progress, but I thought I'd share :)

Comments

jasonjmcghee•9mo ago
Hey nice! We have similar interests. I built something similar, but with way less calculator functionality than you did :D

But the main idea I was going for was real-time JIT evaluation with rendered errors (specifically learning / using cranelift JIT) - less to do with the calculator aspect.

I ended up choosing miette for errors.

https://github.com/jasonjmcghee/basic-treesitter-cranelift-j...

occamatl•9mo ago
> sqrt(10^100)-1 -> 100000000000000000000000000000000000000000000000000

Not what I expected.

emaro•9mo ago
In the readme it says it uses double precision for numbers. Also not quite whet I expected from 'arbitrary precision'.
chriswarbo•9mo ago
Hmm, yeah. It cites `bc` as prior art, which is quite widely used; but another interesting arbitrary-precision calculator is spigot https://www.chiark.greenend.org.uk/~sgtatham/spigot/spigot.h...
mananaysiempre•9mo ago
Also the AOSP calculator, of course[1,2,3].

[1] https://chadnauseam.com/coding/random/calculator-app

[2] https://dl.acm.org/doi/10.1145/2911981

[3] https://dl.acm.org/doi/10.1145/3385412.3386037

emmelaich•9mo ago
Ivy does big numbers (not arbitrary) but does rationals too. It's an APL subset.

    0.1 + 0.2
    3/10
https://github.com/robpike/ivy
lttlrck•9mo ago
the addition of astro_float fixed this.
primitivesuave•9mo ago
The UI is awesome, amazing work! However, arbitrary precision implies that there is no fixed upper limit to the number of digits - simple tests like `0.1 + 0.2 == 0.3` and `2^53 == 2^53 + 1` (both produce "false") indicates you're still using IEEE 754 double precision floats.

If "arbitrary precision" is not as important to you as "high precision", a 128 bit decimal has enough precision for 99% of real-world applications.

crap•9mo ago
Thanks for checking it out! Should have been more clear that this is actively being worked on. This is ultimately the goal, and I'm currently working on integrating `astro_float` as the base for numbers.
primitivesuave•9mo ago
That is awesome, I look forward to following the project and hopefully contributing! I became a better Rust programmer from reading your code :)
jdhwosnhw•9mo ago
Do you mean, the first returns false and the second returns true?
primitivesuave•9mo ago
Ah you're right, thank you for pointing it out!

In the previous version of this comment (where I was still reading it incorrectly) I added a fun fact, that the significand of an IEEE 754 double-precision float is only allocated 52 bits, but the "hidden bit trick" provides an extra bit of precision when the normalized form starts with 1.

johannesrexx•9mo ago
Rewrite it like so

> 1/10 + 2/10 == 3/10 true >

I_complete_me•9mo ago
I wish you well. And I clicked you a star on github. Keep up the good work.
crap•9mo ago
Thanks to everyone who gave feedback!

Arbitrary precision is now supported in 0.3.0 after integrating the `astro_float` (https://docs.rs/astro-float/latest/astro_float/index.html) `BigFloat` type as the base for numbers in the language.

Still working out the kinks, but its live so give it a try!

lttlrck•9mo ago
This is cool.

It love to have to base conversion functions, even if it's print only. Does that fit at all?

lttlrck•9mo ago
and different input base notations, 0x, o, 0b etc
crap•9mo ago
This definitely fits, base conversion is on the roadmap!
librasteve•9mo ago
very cool, welcome to the small club of CLI calculator authors! before I read this I knew of frink and crag (https://raku.land/zef:librasteve/App::Crag since you ask)

Crag is built on raku so has some neat tricks up its sleeve - you can see Crag of the Day to see some in action...

  crag '0.1+0.2=0.2'   #True (arbitrary precision)
  crag '₃₆123.45'      #3F.G77777  (base 36)
  crag 'e ** (i * π) =~= -1'   #True  (math symbols, complex numbers)
  crag '0rMCMXLIV'     #1944 (Roman numerals)
  crag '^<௪௨ mph>'     #42mph  (Unicode and units)
hee hee

Show HN: PolliticalScience – Anonymous daily polls with 24-hour windows

https://polliticalscience.vote/
18•ps2026•3h ago•17 comments

Show HN: Adboost – A browser extension that adds ads to every webpage

https://github.com/surprisetalk/AdBoost
65•surprisetalk•7h ago•90 comments

Show HN: Ask-a-Human.com – Human-as-a-Service for Agents

https://app.ask-a-human.com
2•ManuelKiessling•1h ago•0 comments

Show HN: Stelvio – Ship Python to AWS

https://stelvio.dev/
30•michal-stlv•5h ago•19 comments

Show HN: Apate API mocking/prototyping server and Rust unit test library

https://github.com/rustrum/apate
30•rumatoest•1d ago•11 comments

Show HN: Confabulists, a Substack for Fiction Writers

https://www.confabulists.com/compare/substack
3•soneca•2h ago•0 comments

Show HN: Wikipedia as a doomscrollable social media feed

https://xikipedia.org
393•rebane2001•20h ago•126 comments

Show HN: NanoClaw – “Clawdbot” in 500 lines of TS with Apple container isolation

https://github.com/gavrielc/nanoclaw
493•jimminyx•22h ago•199 comments

Show HN: Cloud-cost-CLI – Find cloud $$ waste in AWS, Azure and GCP

https://github.com/vuhp/cloud-cost-cli
4•vuhp•4h ago•0 comments

Show HN: HoundDog.ai – Ultra-Fast Code Scanner for Data Privacy

https://github.com/hounddogai/hounddog
15•joohwan•4h ago•4 comments

Show HN: ÆTHRA – Writing Music as Code

94•CzaxTanmay•3d ago•33 comments

Show HN: File Markers – Track file status directly in VS Code's Explorer

https://github.com/joneldominic/vscode-file-markers
2•joneldominic•5h ago•1 comments

Show HN: A different approach to intonation training

https://intunetrainer.conpixel.es/
5•ogig•5h ago•1 comments

Show HN: Sklad – Secure, offline-first snippet manager (Rust, Tauri v2)

https://github.com/Rench321/sklad
20•rench321•11h ago•7 comments

Show HN: Nucleus – enforced permission envelopes for AI agents (Firecracker)

https://github.com/coproduct-opensource/nucleus
3•difc•7h ago•0 comments

Show HN: Make AI motion videos with text

https://framecall.com/
4•mesmertech•7h ago•2 comments

Show HN: Bullmq-dash – Terminal UI dashboard for BullMQ (zero setup)

https://www.npmjs.com/package/bullmq-dash
3•quanghuynt14•7h ago•0 comments

Show HN: Minimal – Open-Source Community driven Hardened Container Images

https://github.com/rtvkiz/minimal
115•ritvikarya98•2d ago•28 comments

Show HN: Agents should learn skills on demand. I built Skyll to make it real

https://www.skyll.app/
3•assafe•8h ago•0 comments

Show HN: Sandbox Agent SDK – unified API for automating coding agents

https://github.com/rivet-dev/sandbox-agent
40•NathanFlurry•5d ago•4 comments

Show HN: Voiden – an offline, Git-native API tool built around Markdown

https://github.com/VoidenHQ/voiden
45•dhruv3006•1d ago•28 comments

Show HN: Moltbook – A social network for moltbots (clawdbots) to hang out

https://www.moltbook.com/
274•schlichtm•4d ago•872 comments

Show HN: My Open Source Deep Research tools beats Google and I can Prove it

https://github.com/IamLumae/Project-Lutum-Veritas
15•LutumVeritas•1d ago•3 comments

Show HN: OpenClaw Cloud – run OpenClaw safely in the cloud, no local install

https://openclawcloud.me/
4•stefanopochet•9h ago•0 comments

Show HN: I trained a 9M speech model to fix my Mandarin tones

https://simedw.com/2026/01/31/ear-pronunication-via-ctc/
464•simedw•2d ago•149 comments

Show HN: Prism AI – A research agent that generates 2D/3D visualizations

https://github.com/precious112/prism-ai-deep-research
4•PreciousH•11h ago•3 comments

Show HN: Phage Explorer

https://phage-explorer.org/
122•eigenvalue•2d ago•34 comments

Show HN: Zuckerman – minimalist personal AI agent that self-edits its own code

https://github.com/zuckermanai/zuckerman
70•ddaniel10•1d ago•50 comments

Show HN: Amla Sandbox – WASM bash shell sandbox for AI agents

https://github.com/amlalabs/amla-sandbox
144•souvik1997•3d ago•73 comments

Show HN: You Are an Agent

https://youareanagent.app
9•robkop•1d ago•0 comments