The CKB-VM is the virtual machine responsible for executing smart contracts on Nervos. Virtual machines are software emulations of entire computer systems and enable Turing Complete programmability on blockchains. Turing Complete refers to the ability to compute (almost) anything, given enough resources. 

Ethereum's virtual machine (ETH-VM) opened the door for Turing Complete programmability on blockchains. Nervos Network's takes this concept a step further by implementing RISC-V instruction sets on our virtual machine, resulting in a flexible, future-proof, and high-performance experience for blockchain developers.

All computer instruction set architectures, such as RISC-V, are the lowest level of the software stack, providing raw instructions directly to the CPUs powering our computers, smartphones, and more. RISC-V (2010) is an open-source implementation of RISC, a standard for computer architecture meaning 'Reduced Instruction Set Computer.' It has a growing, dedicated following of developers due to its open-sourced and flexible nature. For context, most instruction sets, like x86 and ARM, which are proprietary and therefore require licensing to build on. Therefore, support and adoption are already prevalent, and several large hardware manufacturers have announced plans to implement RISC-V in their mainstream consumer products. 

By building the CKB-VM on RISC-V instruction sets, blockchain developers can benefit from flexible programmability, starting on the lowest level of CKB. Any programming language that can target RISC-V can be used natively for Nervos development. Use your existing tooling, favorite IDEs, and debug tools. There is no need to rely on immature and untested tools; use whatever is best for the job. Furthermore, the RISC-V instruction standard is mature, established, and growing, making CKB a viable chain for blockchain development of the future.  

Further Reading: