frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Service Degradation in West US Region

https://azure.status.microsoft/en-gb/status?gsid=5616bb85-f380-4a04-85ed-95674eec3d87&utm_source=...
1•_____k•21s ago•0 comments

The Janitor on Mars

https://www.newyorker.com/magazine/1998/10/26/the-janitor-on-mars
1•evo_9•2m ago•0 comments

Bringing Polars to .NET

https://github.com/ErrorLSC/Polars.NET
2•CurtHagenlocher•3m ago•0 comments

Adventures in Guix Packaging

https://nemin.hu/guix-packaging.html
1•todsacerdoti•5m ago•0 comments

Show HN: We had 20 Claude terminals open, so we built Orcha

1•buildingwdavid•5m ago•0 comments

Your Best Thinking Is Wasted on the Wrong Decisions

https://www.iankduncan.com/engineering/2026-02-07-your-best-thinking-is-wasted-on-the-wrong-decis...
1•iand675•5m ago•0 comments

Warcraftcn/UI – UI component library inspired by classic Warcraft III aesthetics

https://www.warcraftcn.com/
1•vyrotek•6m ago•0 comments

Trump Vodka Becomes Available for Pre-Orders

https://www.forbes.com/sites/kirkogunrinde/2025/12/01/trump-vodka-becomes-available-for-pre-order...
1•stopbulying•7m ago•0 comments

Velocity of Money

https://en.wikipedia.org/wiki/Velocity_of_money
1•gurjeet•10m ago•0 comments

Stop building automations. Start running your business

https://www.fluxtopus.com/automate-your-business
1•valboa•14m ago•1 comments

You can't QA your way to the frontier

https://www.scorecard.io/blog/you-cant-qa-your-way-to-the-frontier
1•gk1•15m ago•0 comments

Show HN: PalettePoint – AI color palette generator from text or images

https://palettepoint.com
1•latentio•16m ago•0 comments

Robust and Interactable World Models in Computer Vision [video]

https://www.youtube.com/watch?v=9B4kkaGOozA
2•Anon84•20m ago•0 comments

Nestlé couldn't crack Japan's coffee market.Then they hired a child psychologist

https://twitter.com/BigBrainMkting/status/2019792335509541220
1•rmason•21m ago•0 comments

Notes for February 2-7

https://taoofmac.com/space/notes/2026/02/07/2000
2•rcarmo•23m ago•0 comments

Study confirms experience beats youthful enthusiasm

https://www.theregister.com/2026/02/07/boomers_vs_zoomers_workplace/
2•Willingham•30m ago•0 comments

The Big Hunger by Walter J Miller, Jr. (1952)

https://lauriepenny.substack.com/p/the-big-hunger
2•shervinafshar•31m ago•0 comments

The Genus Amanita

https://www.mushroomexpert.com/amanita.html
1•rolph•36m ago•0 comments

We have broken SHA-1 in practice

https://shattered.io/
10•mooreds•36m ago•3 comments

Ask HN: Was my first management job bad, or is this what management is like?

1•Buttons840•37m ago•0 comments

Ask HN: How to Reduce Time Spent Crimping?

2•pinkmuffinere•39m ago•0 comments

KV Cache Transform Coding for Compact Storage in LLM Inference

https://arxiv.org/abs/2511.01815
1•walterbell•43m ago•0 comments

A quantitative, multimodal wearable bioelectronic device for stress assessment

https://www.nature.com/articles/s41467-025-67747-9
1•PaulHoule•45m ago•0 comments

Why Big Tech Is Throwing Cash into India in Quest for AI Supremacy

https://www.wsj.com/world/india/why-big-tech-is-throwing-cash-into-india-in-quest-for-ai-supremac...
2•saikatsg•45m ago•0 comments

How to shoot yourself in the foot – 2026 edition

https://github.com/aweussom/HowToShootYourselfInTheFoot
2•aweussom•46m ago•0 comments

Eight More Months of Agents

https://crawshaw.io/blog/eight-more-months-of-agents
4•archb•48m ago•0 comments

From Human Thought to Machine Coordination

https://www.psychologytoday.com/us/blog/the-digital-self/202602/from-human-thought-to-machine-coo...
1•walterbell•48m ago•0 comments

The new X API pricing must be a joke

https://developer.x.com/
1•danver0•49m ago•0 comments

Show HN: RMA Dashboard fast SAST results for monorepos (SARIF and triage)

https://rma-dashboard.bukhari-kibuka7.workers.dev/
1•bumahkib7•49m ago•0 comments

Show HN: Source code graphRAG for Java/Kotlin development based on jQAssistant

https://github.com/2015xli/jqassistant-graph-rag
1•artigent•54m ago•0 comments
Open in hackernews

Recovering control flow structures without CFGs

https://purplesyringa.moe/blog/recovering-control-flow-structures-without-cfgs/
5•todsacerdoti•8mo ago

Comments

purplesyringa•8mo ago
OP here. The post is about a method I derived as a part of my work on a Java decompiler. I also have related questions for people in programming language theory. ("Ask HN" doesn't seem to fit submissions with URLs, so I'm posting it here.)

It's frustrating how few online resources cover efficient (de)compiler designs. There's many people doing cheap, but low-quality decompilation (e.g. here's someone's post on writing a .NET decompiler: https://news.ycombinator.com/item?id=9952145), and there's even more people writing stupid non-optimizing compilers. There's also quite a few folks improving LLVM or Ghidra, or writing new, but heavy theorem prover-based decompilers (e.g. DREAM: https://net.cs.uni-bonn.de/fileadmin/ag/martini/Staff/yakdan...). But there's frustratingly little information on the middle ground.

Also, and I think this ties to the previous point, there's next to zero entry-level resources on hard topics. It's like there's an invisible wall: tons of people learn tokenization, parsing, codegen, and then they stop because their compiler already "works". Resources that do focus on optimization are haphazard, either exclusively describing peephole optimizations, or explaining how higher-level optimizations can work in theory without any mention of how to implement them efficiently and fit them together in a LLVM-like backend framework.

There's literally no specific info on pass ordering and pass design, as if it's something intuitive. But the more I'm working on the decompiler, the more I realize that I have to cram basically everything into a single pass if I want to avoid the dreaded `do { .. } while (changed);` loop and arbitrary heuristics. But not all passes can be merged, obviously, so I have to re-architecture everything all the time.

Regarding the method in the post, I could easily be reinventing a wheel and not knowing it.

So I'm very interested in hearing if this method is used anywhere else, whether CFGs can be efficiently applied to decompilers without encountering the problems described described in my post, some advice on pass design and ordering, and maybe information about specific algorithms compilers and decompilers use (I know about dominators, obviously, but I've never heard about anything else; I can't imagine there aren't any).

I also learn best by doing and following experiences, rather than copying the finished product, so if anyone knows a blog series on a person developing a full optimizing compiler from scratch or something similar, that would be very useful.