In addition to introducing a new smart contract runtime, Fabric has a similar web3 provider which can be used to develop decentralized applications [DApps] using web3.js. Furthermore, the new feature is a result of the 1.3 release and its main aim is to ensure that developers are able to migrate or create DApps for a permissioned platform.
Solidity is a programming language for writing smart contracts whereas Vyper is an experimental programming language that compiles down to the EVM bytecode. As part of integrating the EVM, Hyperledger has recreated the developer experience of Ethereum. The integration was further broken into two key parts, the EVM user chaincode, and web3 provider Fab3.
Hyperledger Fabric is designed with four basic modules: the main ledger, identity management, the consensus mechanism, and smart contracts called chaincode. The Ethereum smart contracts are an alternative to the chaincode.
The EVM user chaincode is a wrapper around the Hyperledger Burrow EVM which is a modular blockchain client with a smart contract interpreter developed to the specification of the EVM. Fab3 was adopted from the Ethereum ecosystem and is the Ethereum JSON RPC API.
The API described a systematic way in which clients could interact with the Ethereum network. Furthermore, differences between Ethereum and Fabric resulted in Fab3 not to completely implement the API but it did support enough instructions to allow DApps to be written using the web3.js library.
The report added that the future plans of Hyperledger Fabric included facilitating smart contract events, and further expanding the Fab3 support in order to allow clients like Remix and Truffle to interact with Fabric. They have also been focusing on adopting other features of the Ethereum ecosystem.
Article comments