Skip to main content

Plutus Core Team Update

· 2 min read
Ziyang Liu

High level summary

Plutus Core

  • Following the support for case analysis on booleans, integers and lists, we are now working on supporting case analysis for unit, pairs, and Data.

  • The required changes to enable all built-in functions, as well as sums-of-products, in all Plutus ledger languages (Plutus V1, V2 and V3) have been implemented in preparation for the upcoming intra-era hard fork.

  • We started developing a surface language benchmark for UPLC, aimed to compare the performances of different surface languages targeting UPLC. We have introduced the first scenario for comparison - computing Fibonacci numbers. More scenarios will be added in the near future.

Plinth

  • The Plinth compiler now compiles Haskell Bool into UPLC's built-in boolean type, instead of sums-of-products or Scott encoded boolean. This makes many scripts smaller and faster.

  • We are planning additional performance and usability improvements, such as inlining recursive bindings, and showing line numbers in compilation errors.

Low level summary

Key Pull Requests Merged

Issues and Pull Requests In Progress