Plutus language changes
Language versions
See the documentation on language versions for an explanation of what they are.
Plutus V1
PlutusV1
was the initial version of Plutus, introduced in the Alonzo hard fork.
Plutus V2
PlutusV2
was introduced in the Vasil hard fork.
The main changes in PlutusV2
were to the interface to scripts.
The ScriptContext
was extended to include the following information:
Examples
Built-in functions and types
Built-in functions and types can be introduced with just a hard fork. In some cases they are also available only in particular language versions. This section indicates in which hard fork particular built-ins were introduced, and any language version constraints.
Alonzo
This is when the majority of the built-in types and functions were added to PlutusV1
.
You can find an enumeration of them in IOHK [6].
Vasil
All of the built-in types and functions from PlutusV1
were added to PlutusV2
.
The following built-in function was added to PlutusV2
only (i.e., it is not available in PlutusV1
).
serializeData
(proposed in CIP-42)