A new hardfork for ckb is already being planned, and the following is a preview of the planned changes #3827
zhangsoledad
started this conversation in
General
Replies: 1 comment 1 reply
-
@zhangsoledad Is there somewhere I can read more about the new syscalls? |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
A new hardfork for ckb is already being planned, tentatively named 2023, and the following is a preview of the planned changes
In the current ckb consensus rules, the
version
field of the block header is reserved and only allowed to be 0. In the 2023 edition this reservation will be removed to allow for the use of RFC0043The new version of vm, after the last hardfork introduced a new vm version, this time we will introduce vm version2 in the same way, which will bring the following features:
Spawn
,Get Memory Limit
,Set Content
will be added. The syscallSpawn
is the core part of this update. TheSpawn
and the latter two syscalls:Get Memory Limit
andSet Content
together, implement a way to call another CKB Script in a CKB Script. Unlike the Exec syscall,Spawn
saves the execution context of the current script, like posix_spawn, the parent script blocks until the child script ends.In addition, the design of the new Spawn syscall and Suspend/Resume is not well adapted, and the processing logic for transactions with huge cycles will change, so we hope to make some optimizations.
We are considering adding live cells commitments, there are two alternatives to add live cells commitments, one is through a softfork, similar to the light-client protocol, using block extension, or by hardfork, adding a root field to the block header, we are weighing these two alternatives and looking at the scenarios that require it, suggestions and discussions are very welcome.
We are plagued by a naming problem, naming is really hard. In ckb,
The
hash_type
of Script has two kinds, one isData
(Data & Data1) and the other isType
, this naming is very disturbing to many ckb beginners, it is very difficult for beginners to correspond the name with the real meaning behind, the relationship between the two is actually very similar toIP
andDomain Name
, so we consider renamingType
toNameID
, this is just a preliminary proposal, hope there are more proposals will be proposed, welcome to discuss!Beta Was this translation helpful? Give feedback.
All reactions