Wave Language
What is Wave?
In Crypdolphin, you write Smart Contracts with the Wave Programming language. This page links to key Wave resources and compares the Wave and Solidity programming languages.
Why Wave?
One of the main advantages of Wave is data composability. It is always possible to create a new struct (asset) Y that will hold initial asset X in it. Even more - with the addition of generics, it is possible to define generic wrapper Z(T) that will be able to wrap any asset, providing additional properties to a wrapped asset or combining it with others.
Wave vs. Solidity
Currently, the main player in the blockchain languages scene is Solidity. As one of the first blockchain languages, Solidity was designed to implement basic programming language concepts using well-known data types (e.g. byte array, string) and data structures (such as hashmaps) with the ability to build custom abstractions using a well-known base.
However, as blockchain technology developed it became clear that the main purpose of blockchain languages is operating on digital assets, and the main quality of such languages is security and verifiability (which is an additional layer of security).
Wave was specifically designed to address both problems: representation of digital assets and safe operations over them. To provide additional protection, it has been co-developed along with the Wave Prover verification tool. This allows Wave developers to write formal specifications for the key correctness properties of their application, then use the prover to check that these properties will hold for all possible transactions and inputs.
Last updated