Cardano Plutus 1.68.0.0 traz Plutus V4 para a pilha de desenvolvimento
A equipe do Plutus da Cardano lançou a versão 1.68.0.0 com tipos da ledger API do Plutus V4, novos builtins de contratos inteligentes e uma configuração do Plinth mais simples. A versão dá aos desenvolvedores acesso antecipado a componentes que estão sendo preparados para a era Dijkstra enquanto o Plutus V4 permanece em desenvolvimento.
By SongMarketCap
A pilha de contratos inteligentes da Cardano aproximou-se da era Dijkstra com o lançamento do Plutus 1.68.0.0. A atualização introduz tipos da ledger API do Plutus V4, expande o manuseio de ativos on-chain e simplifica o processo de iniciar novos projetos no Plinth.
A versão não ativa o Plutus V4 na mainnet da Cardano, mas traz partes do próximo ambiente de execução para a atual cadeia de ferramentas de desenvolvimento.
Tipos do Plutus V4 entram na cadeia de ferramentas atual
Plutus fornece a linguagem de execução e as ferramentas usadas pelos contratos inteligentes da Cardano. Sua ledger API expõe dados de transações e de blockchain que scripts podem inspecionar ao validar transações.
A versão 1.68.0.0 adiciona o Plutus V4 e o suporte correspondente na ledger API a dijkstraPV. A versão também adiciona V4 aos blueprints de contratos do CIP-57, permitindo que scripts sejam identificados como versão v4.
A equipe do Plutus alerta que V4 ainda está em desenvolvimento e que os novos tipos da ledger API podem mudar antes de Dijkstra.
O desenvolvimento também continua no pattern matching direto sobre Data. Uma expressão case agora pode despachar diretamente com base na tag do construtor de um valor Data.Constr. Combinada com a funcionalidade dropList adicionada recentemente, isso reduz a sobrecarga para a lógica de scripts que trabalham com dados on-chain estruturados.
Novos builtins melhoram a validação de ativos
Plutus 1.68.0.0 também introduz o builtin assetCount do CIP-0168 junto com seu modelo de custos.
A função retorna o número de pares distintos de policy ID e nome de token contidos em um valor. Isso dá aos contratos inteligentes uma forma direta de verificar quantos ativos diferentes estão presentes em vez de percorrer manualmente toda a estrutura do valor.
A funcionalidade é relevante para o modelo multi-asset da Cardano. Um contrato DeFi, por exemplo, pode precisar verificar que um UTxO contém ADA, DJED e um conjunto específico de tokens do protocolo enquanto rejeita ativos inesperados que poderiam interferir na validação ou aumentar custos de transação posteriores.
A versão também adiciona custos com benchmark para multiIndexArray, um builtin projetado para recuperar vários elementos de um array em uma única operação. Isso reduz a lógica de busca repetitiva quando scripts precisam de múltiplas posições do mesmo array.
Essas adições levam funcionalidades anteriormente descritas por meio das Cardano Improvement Proposals ainda mais para o código do Plutus já lançado.
Configuração do Plinth migra para um fluxo de trabalho com um único comando
O mesmo ciclo de desenvolvimento também simplifica a integração ao Plinth, o framework Haskell usado para construir contratos inteligentes com Plutus.
O plinth-template atualizado inclui um fluxo de instalação que pode criar um novo projeto com um único comando enquanto trata das ferramentas de desenvolvimento necessárias e da estrutura do projeto.
Isso dá à versão dois efeitos distintos para desenvolvimento. Plutus 1.68.0.0 expõe mais do ambiente de execução que está sendo preparado para Dijkstra, enquanto as mudanças no Plinth reduzem a configuração necessária para que os desenvolvedores comecem a trabalhar com ele.
Plutus V4 ainda está sendo definido, mas os desenvolvedores agora têm uma superfície de implementação mais ampla para testar. Tipos da ledger API, novos builtins e ferramentas atualizadas estão levando a próxima geração do Plutus do trabalho de especificação para versões de desenvolvimento utilizáveis antes que a era do ledger Dijkstra chegue à ativação.