re 3 hours ago Related:Copy-and-Patch: Fast compilation for high-level languages and bytecode (2020) https://news.ycombinator.com/item?id=40553448 - June 2024 (51 comments)A copy-and-patch JIT compiler for CPython - https://news.ycombinator.com/item?id=38769874 - Dec 2023 (68 comments)Copy-and-Patch: Fast JIT Compilation for SQL, WebAssembly, and Others - https://news.ycombinator.com/item?id=28547057 - Sept 2021 (7 comments)
shoo 3 hours ago the accompanying post "How It Works" is worth reading alongside this tutorialhttps://transactional.blog/copy-and-patch/(key terms: abus[e|ing]: 4, force: 3, trick: 1, chance: 1)
weinzierl 3 hours ago I think this technique also lies at the heart of the Cranelift project.https://cranelift.dev/ aw1621107 11 minutes ago IIRC Cranelift doesn't use copy-and-patch. It uses e-graphs [0] as part of its optimization pipeline, though.Closest thing in (relatively) recent news that uses copy-and-patch I can think of is CPython's new JIT.[0]: https://github.com/bytecodealliance/rfcs/pull/27 weinzierl 2 minutes ago My understanding is that e-graphs take care of selecting the best patch (by examining many options in parallel) but fundamentally it is still copy-and-patch.
aw1621107 11 minutes ago IIRC Cranelift doesn't use copy-and-patch. It uses e-graphs [0] as part of its optimization pipeline, though.Closest thing in (relatively) recent news that uses copy-and-patch I can think of is CPython's new JIT.[0]: https://github.com/bytecodealliance/rfcs/pull/27 weinzierl 2 minutes ago My understanding is that e-graphs take care of selecting the best patch (by examining many options in parallel) but fundamentally it is still copy-and-patch.
weinzierl 2 minutes ago My understanding is that e-graphs take care of selecting the best patch (by examining many options in parallel) but fundamentally it is still copy-and-patch.
Related:
Copy-and-Patch: Fast compilation for high-level languages and bytecode (2020) https://news.ycombinator.com/item?id=40553448 - June 2024 (51 comments)
A copy-and-patch JIT compiler for CPython - https://news.ycombinator.com/item?id=38769874 - Dec 2023 (68 comments)
Copy-and-Patch: Fast JIT Compilation for SQL, WebAssembly, and Others - https://news.ycombinator.com/item?id=28547057 - Sept 2021 (7 comments)
the accompanying post "How It Works" is worth reading alongside this tutorial
https://transactional.blog/copy-and-patch/
(key terms: abus[e|ing]: 4, force: 3, trick: 1, chance: 1)
I think this technique also lies at the heart of the Cranelift project.
https://cranelift.dev/
IIRC Cranelift doesn't use copy-and-patch. It uses e-graphs [0] as part of its optimization pipeline, though.
Closest thing in (relatively) recent news that uses copy-and-patch I can think of is CPython's new JIT.
[0]: https://github.com/bytecodealliance/rfcs/pull/27
My understanding is that e-graphs take care of selecting the best patch (by examining many options in parallel) but fundamentally it is still copy-and-patch.