Skip to main content

PPP 040203 - High-Level, Typed Validation Scripts

Tóm tắt nội dung

Video thảo luận về một mô-đun trong thư mục mã được sử dụng để tạo hợp đồng thông minh. Mã này đơn giản và bỏ qua hai trong ba đối số được truyền, trong khi kiểm tra xem Redeemer có phải là số nguyên của 42. Hàm được biên dịch thành tập lệnh Plutus Core hay không và được tuần tự hóa Hợp đồng sử dụng một cơ chế cấp thấp. Tuy nhiên, dữ liệu tích hợp Type được sử dụng để mô hình hóa dữ liệu tùy biến không đủ mạnh để đảm bảo trình biên dịch bị lỗi. Do đó, mong muốn là đưa ra cách thích hợp cho ba đối số này. Chẳng hạn, đối số đầu tiên có thể được gán đơn vị Kiểu vì nó bị bỏ qua và đối số thứ hai có thể được gán số nguyên Kiểu vì Redeemer dự kiến ​​sẽ là một số nguyên. Đối số thứ ba luôn luôn thuộc Kiểu Script Contexts. Mã này có thể được viết để phản ánh logic kinh doanh và tự nhiên hơn đối với những người quen với các ngôn ngữ xác định Kiểu mạnh mẽ. Bằng cách cung cấp thêm thông tin trong chữ ký của Trình xác thực, người ta có thể biết ngay các loại `dự ​​kiến ​​cho các đối số. Việc sử dụng dấu vết nếu hàm lỗi giúp cung cấp thông báo gỡ lỗi nếu có lỗi. Một hàm được gọi là Wrap được sử dụng để tham số hóa hai đối số đầu tiên của hàm, sẽ là Kiểu của Datum và Redeemer được sử dụng. Hàm bọc là đa hình trong hai đối số đầu tiên và trả về một dữ liệu tích hợp Kiểu.


Picture