frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Parsing Advances

https://matklad.github.io/2025/12/28/parsing-advances.html
27•birdculture•2h ago

Comments

kccqzy•33m ago
How about another way, which is memoization: at each position in the source code we never attempt to parse the same production more than once. This solves infinite looping as discussed by the author because the “loop” will be downgraded by the memoization to execute once. Of course I wouldn't literally use a while loop in code to represent the production. I would use a higher-level abstraction to indicate one-or-more or zero-or-more in the production; indeed I would represent productions as data not code.

This also has another benefit of work sharing. A production like `A B | C B` will ensure that in case parsing A or C consumes the same number of characters, the work to parse B will be shared, despite not literally factoring the production into `(A | C) B`.

smj-edison•27m ago
That's a slick way, would you essentially have a second counter that you'd set to the current cursor whenever you use `.currentToken()` or something like that?
smj-edison•28m ago
Huh, that's a really interesting approach. I just wrote my first Pratt parser a month ago, and one of the most annoying things was debugging infinite loops in various places (I had both tokenizer bugs where no characters were consumed and parser bugs where a token was emitted but not advanced). It's doubly annoying in Zig, because the default test runner won't print out stdout at all, and won't print stderr unless the program terminates by itself (Ctrl + C doesn't print). I resorted to building the test and running it manually, or jumping into a debugger to figure out recursion issues. It's working now, but if (really when) I run into issues in the future I'll definitely add some helper functions to check emitting invariants.

My 20-Year-Old Program

https://seminumerical.io/post/my-20-year-old-program/
1•nice_byte•2m ago•0 comments

Language Gives Authority to Weak Ideas

https://hichvg.substack.com/p/elegance-is-bullshit
1•chvgchvg•2m ago•0 comments

Making end-to-end encrypted AI chat feel like logging in

https://confer.to/blog/2025/12/passkey-encryption/
3•arkadiyt•8m ago•0 comments

PhDs Can't Find Work as Boston's Biotech Engine Sputters

https://www.wsj.com/tech/biotech/ph-d-s-cant-find-work-as-bostons-biotech-engine-sputters-729f0036
1•JumpCrisscross•8m ago•0 comments

Benchmarking Self-Hosted S3-Compatible Storage

https://www.repoflow.io/blog/benchmarking-self-hosted-s3-compatible-storage-a-practical-performan...
1•wener•9m ago•0 comments

Show HN: ARES Dashboard – Open-Source AI Red-Teaming and Governance Platform

https://github.com/Arnoldlarry15/ARES-Dashboard
1•LA_Builds•13m ago•0 comments

Zuck buys Chinese AI company Manus that claims it deals in actions, not words

https://www.theregister.com/2025/12/30/meta_acquires_manus/
1•rguiscard•19m ago•1 comments

Engineering compact Goldenberry to promote its potential as a global crop

https://nph.onlinelibrary.wiley.com/doi/10.1002/ppp3.70140
1•PaulHoule•19m ago•0 comments

Merriam-Webster: LLM [video]

https://www.youtube.com/watch?v=RvQnl3O0D3c
1•cdrnsf•21m ago•0 comments

Show HN: BSH – A Git-aware, IntelliSense-style predictive Zsh history daemon

https://github.com/joshikarthikey/bsh
1•karthikeyjoshi•22m ago•0 comments

How We Use the Word Cyber

https://www.bbc.com/news/magazine-35765276
1•andsoitis•26m ago•0 comments

Convoy Steamroller

https://tedium.co/2025/12/25/cb-radio-cw-mccall-mannheim-steamroller-christmas/
1•chatmasta•26m ago•0 comments

Show HN: OMyTree – Turning AI chats into durable process assets

https://www.omytree.com
1•isbeingto•26m ago•0 comments

TLHO – A domain-agnostic, fail-closed verification substrate

1•tlho•27m ago•0 comments

&udm=14: the disenshittification Konami code (remove AI from Google results)

https://udm14.com/
3•chatmasta•28m ago•1 comments

Data Model Dependency Is a Trap

https://medium.com/@HobokenDays/the-fate-of-shared-data-model-cf8a3dc88ac9
1•HideInNews•32m ago•0 comments

Ship comms: how do they work?–lightning talk by Matt Kulukundis [video]

https://www.youtube.com/watch?v=RFvnXCHS57M
3•leoc•38m ago•0 comments

Show HN: Beauty Arena – An Elo-based experiment to measure aesthetics

https://beautyarena.vercel.app
1•railing1024•38m ago•0 comments

"For You" Feed for Science

https://www.researchhub.com/
1•Tardigrade10•39m ago•0 comments

Outside, Dungeon, Town: Integrating the Three Places in Videogames (2024)

https://keithburgun.net/outside-dungeon-town-integrating-the-three-places-in-videogames/
3•vector_spaces•40m ago•0 comments

39C3 – Breaking architecture barriers: Running x86 games and apps on ARM

https://www.youtube.com/watch?v=3yDXyW1WERg
1•doener•41m ago•0 comments

Stranger Things Creator: Turn Off TV's Garbage Settings

https://www.instagram.com/reel/DRiaP2zEow4/
1•next_xibalba•42m ago•1 comments

Why A.I. Didn't Transform Our Lives in 2025

https://www.newyorker.com/culture/2025-in-review/why-ai-didnt-transform-our-lives-in-2025
1•petethomas•43m ago•0 comments

Show HN: McNeal – Encrypted messaging over acoustic channels

https://github.com/AntonioLambertTech/McnealV2
1•netIsNewWrldOrd•44m ago•0 comments

Show HN: SAFi, a Governance Engine for LLMs

https://safi.selfalignmentframework.com
1•jnamaya•46m ago•0 comments

'Capital of capital': how Abu Dhabi rose as a sovereign wealth powe

https://www.ft.com/content/711e670c-4832-49cb-8b10-5018103ec785
1•petethomas•50m ago•0 comments

The Magic of Merlin

https://www.birds.cornell.edu/home/the-magic-of-merlin/
1•Group_B•54m ago•1 comments

Why most software startups don't need VCs anymore (most)

https://sderosiaux.substack.com/p/why-most-software-startups-dont-need
2•chtefi•56m ago•0 comments

Episteme: A New System for Science

https://episteme.com/
1•momeara•57m ago•0 comments

Comparative Overview of EU-US Vehicle Standards

https://etsc.eu/comparative-overview-eu-us-vehicle-standards/
4•throw0101c•1h ago•0 comments