minamoto79.bsky.social

@minamoto79.bsky.social

Building Hexana at JetBrains: a binary-aware companion for IntelliJ and VS Code. WebAssembly, native binaries (ELF/Mach-O/PE), JVM JIT internals, and MCP tools so AI agents get ground truth, not guesses. WASM, compilers, GraalVM. http://hexana.lovable.app

Hard not to agree :) It's why we're building Hexana — so people and AI can read the true "source code": the compiled binary that actually runs, not just the text we wrote. Source is intent, the binary is truth. x.com/elonmusk/status/2084304083851034949

Elon Musk (@elonmusk) on X

This is exactly right. Source code is on the verge of becoming like assembly. The next step is getting rid of “source code” entirely and just making an efficient binary directly with AI.

x.com

Top tab now shows a size diagram for WebAssembly and native binaries: largest entities ranked by byte size. Fixes in 0.15: the empty Dominators tree regression, Go to Source for Rust modules, and a rare UI freeze on the Decompiled tab.

BildBild

Exception-handling visibility: try_table, throw, and throw_ref decode in WAT with tag and label comments. Click a throw to jump to its handler, or see it marked as escaping to the host. New Tags tab. New Exceptions tab showing the module's panic surface.

BildBild

Every call_indirect and return_call_indirect row in the WAT view shows statically known dispatch candidates: functions in the table whose type matches the call site. The Dispatch diff tab shows which candidates entered or left the table between two builds, grouped per signature.

BildBild

Two more for native binaries: a size diff action comparing two native binary files section by section (byte deltas sorted by impact), and semantic section highlighting that color-codes sections in the hex view and adds jump navigation between them. Works for both WASM and native formats.

Bild

The fix was in the data structures, not a bigger heap. Dominator results moved to a compact int buffer instead of boxed hash maps. Indirect-call edges went from callers-times-table (hundreds of millions on Emscripten modules) to linear via a synthetic node. memory64 modules included.

Bild