Jets (Was: `OP_FOLD`: A Looping Construct For Bitcoin SCRIPT)



Summary:

The conversation between Billy and ZmnSCPxj centers around the implementation of "jets" in Bitcoin software. Jets are a system that compresses code in Bitcoin transactions to enhance network efficiency. The discussion involves several options for implementing jets, including without a consensus change, with a soft fork, or with the addition of a jet registration mechanism. The dialogue also delves into security issues, end-user incentives for using jets, and introducing new jets into the network. One proposal to improve Bitcoin scripting language is to move incompressible hashes out of the main script body, making the entire script a recognizable jet. This would make it easier to create recursive covenants by combining OP_CAT opcode with other opcodes that allow recursive covenants. A separate table of constants would facilitate changing variables at each iteration, which is necessary for interesting recursive covenants.The author discusses the tension between general and specific language in information-theoretic terms. While a general language has longer symbols, certain sequences are more likely than others, necessitating shortcuts like jets. They suggest starting with a terse but restricted language and gradually loosening up restrictions through soft forks. Overall, the conversation covers technical details about how jets work and the challenges associated with their implementation. It touches on the need for efficient network usage, security concerns, and ways to incentivize end-users to use jets. The context also explores improving Bitcoin scripting language by making it more compressible and enabling the creation of recursive covenants.


Updated on: 2023-06-15T17:47:26.432460+00:00