I came across this project in the last couple of days too. Being able to decompile from Hermes bytecode sounds awesome.<p>Here's the repo: <a href="https://github.com/google/jsir" rel="nofollow">https://github.com/google/jsir</a> (it seems not everything is public).<p>Here's a presentation about it: <a href="https://www.youtube.com/watch?v=SY1ft5EXI3I" rel="nofollow">https://www.youtube.com/watch?v=SY1ft5EXI3I</a> (linked in from the repo)
This is exciting stuff!<p>My interpretation:
If the JSIR project can successfully prove bi-directional source to MLIR transformation, it could lead to a new crop of source to source compilers across different languages (as long as they can be lowered to MLIR and back).<p>Imagine transmorphing Rust to Swift and back. Of course you’d still need to implement or shim any libraries used in the source language. This might help a little bit with C++ to Rust conversions - as more optimizations and analysis would now be possible at the MLIR level. Though I won’t expect unsafe code to magically become safe without some manual intervention.
> Industry trend of building high-level language-specific IRs<p>"Trend"?<p>This was always the best practice. It's not a "trend".
I want them to finish the official TC39 binary AST proposal. Nearly twice as fast to parse and a bit smaller than minified code makes it a pretty much universally useful proposal.<p><a href="https://github.com/tc39/proposal-binary-ast" rel="nofollow">https://github.com/tc39/proposal-binary-ast</a>
IR = Intermediate Representation<p><a href="https://en.wikipedia.org/wiki/Intermediate_representation" rel="nofollow">https://en.wikipedia.org/wiki/Intermediate_representation</a>