Plutus Core Team Update
High level summary
Casing on Data has been merged: case on a Data.Constr value now dispatches directly on the constructor tag, which, combined with the recently added dropList, significantly reduces the cost of consuming Data-encoded values.
This is a Plutus V4 feature, and we are also working on specifying casing on built-in types in the Plutus Core specification.
Work on the Value builtins (CIP-0168) continues: the keepPolicies and dropPolicies builtins have been added, the cost model for policies has been merged, and the cost models for keepPolicies and dropPolicies are in progress.
Like the other new builtins, these are gated behind a future protocol version and cannot be used on-chain until Dijkstra.
On the Plutus V4 ScriptContext front, we are implementing a different encoding for product types using List instead of Constr, which makes them cheaper to decode.
We are also improving the usability of the certifier in the uplc and plc tools.
Key Pull Requests Merged
- Add
Data.Constrcasing toCase - Add
keepPoliciesanddropPoliciesbuiltins (CIP-0168) - Cost model for
policies(CIP-0168) - Remove deferred builtin applications from the specification
