Lack of practical education on the performance differences between languages used in Cardano and their root causes in code level.Quality of the generated code, ease of writing the validation and tests
This is the total amount allocated to Production grade code education: Aiken, Plutarch & PlutusTx.
NB: Monthly reporting was deprecated from January 2024 and replaced fully by the Milestones Program framework. Learn more here
Build, finetune and prep in an edu style open-sourced request parsing code of WR DEX smart contracts in PlutusTx, Plutarch, and Aiken. Showcase differences in the performance, testing, and exporting.
No dependencies
The source code will be shared in a public GitHub repository under the MIT license.
Build, finetune, document and process in an educational manner open-source piece of the WingRiders DEX smart contracts logic dealing with the user interaction request parsing, as it fits the following criteria:
We intend to adapt and open-source the PlutusTx version of the validation that is used in the WingRiders V1 Pools, the Plutarch one that is used in the V2 Pools, and build an additional implementation in Aiken.
We also propose to illustrate in an educational manner the process of testing the implementation and compiling the contracts with the purpose of using them on-chain. After that, a detailed analysis of the script size, execution costs, UTxO limits, and growth factors of all the resulting scripts will be conducted to highlight the differences in performance, code generation quality, ease of writing, reviewing, and testing among the chosen languages. Links to the public testnet transactions will be shared as a part of the learning materials.
The lack of accessible and practical educational materials on the differences between various popular languages used on Cardano and their specifics in terms of performance impacting approaches is a problem that hurts productivity, awareness and capability among the development community to continually advance the ecosystem forward in terms of technological improvement.
The developers get additional materials for a comprehensive understanding of the available options for writing applications on Cardano, a way to assess what they can expect when they choose a language in terms of the performance and quality of the generated code, how easy it is to write the validation and test it, if the language is a good fit semantically for the available on-chain functionality, and how easy it is to configure and export the scripts so they can be used on-chain.
The users get an overview of the technological choices available in the ecosystem to know what fees and contracts quality they can expect out of the applications they choose to use.
As WingRiders, we have a track-proven record of developing within the Cardano ecosystem. Over the years we’ve shown to be at the forefront of technological advancements when it comes to DEXes and Cardano in general. We were the first ones to bring support for Stableswaps, have a fully on-chain DAO governance, launched the first trustless non-custodial launchpad and recently V2 smart contracts with optimized transaction batching, new features such as Routed Swap, PathFinder, ZapIn/ZapOut and much more. Created a lot of open source tooling and continues to push the edge of what is possible with the Cardano chain evolving.
Regarding fund management, we adhere to rigorous protocols ensuring robust financial stewardship and accountability. Our practices encompass the maintenance of transparent financial records, periodic internal audits, and strict compliance with financial reporting standards. We understand the imperative nature of prudent fund management and commit to upholding the highest standards of fiscal responsibility throughout the project's lifecycle.
As evidence, we have 2 Catalyst proposals from F10 and F11 with Proof of Achievement submitted and approved for all completed milestones except the final milestones, which are in progress. Two proposals from F12 are having Milestones 1 and 2 submitted ahead of the schedule.
PlutusTx
Description: Adapting the existing PlutusTx request parsing code from the WingRiders DEX V1 codebase so it can run in isolation from the rest of the DEX logic as a separate validator. Preparing the development environment. Setting up the contracts exporting, writing unit tests.
Expected timeline: 18 working days
Outputs: An open-source public GitHub repository with the source code.
Acceptance criteria: The repository is publicly accessible and contains the contracts’ source code, exporting machinery, and tests.
Plutarch
Description: Adapting the existing Plutarch request parsing code from the WingRiders DEX V2 codebase so it matches the PlutusTx version algorithmically and can run in isolation from the rest of the DEX logic as a separate validator. Preparing the development environment. Setting up the contracts exporting, writing simple unit tests.
Expected timeline: 15 working days
Outputs: An open-source public GitHub repository with the source code.
Acceptance criteria: The repository is publicly accessible and contains the contracts’ source code, exporting machinery, and tests.
Aiken and Public test net runs
Description: Writing an Aiken implementation of the request parsing logic that matches the PlutusTx and the Plutarch ones. Preparing the development environment. Setting up the contracts exporting, writing simple unit tests. Running the generated code on the public test net to determine the performance differences between the implementations, the fees, and the upper batch limits of the scripts.
Expected timeline: 15 working days
Outputs: An open-source public GitHub repository with the source code. Transactions with the limits of the scripts on the public test net.
Acceptance criteria: The repository is publicly accessible and contains the contracts’ source code, exporting and tests. The transactions from testing are publicly available and shared through the WingRiders public channels
Project Close-out Report and Project Close-out Video
Description: Create final project completion report and video.
Expected timeline: 10 working days
Outputs:
Acceptance Criteria:
Evidence:
WingRiders engineering team is composed of experienced professionals in blockchain technology and software development. Our team members stand behind projects like Adalite, Yoroi wallet, Emurgo’s first blockchain explorer/indexer, firmware for hardware wallets Trezor and Ledger (bringing them to Cardano), and WingRiders DEX and LaunchPad.
Milestone 1: PlutusTx
Milestone 2: Plutarch
Milestone 3: Aiken and Public testnet runs
Final Milestone: Analysis, Project Completion Report and Video
The Cardano ecosystem gets high-quality educational materials based on a real production-running codebase about the available languages the developers can use. The users get an overview of what quality of the on-chain code they can expect from the various Dapps’ contracts based on the language they use, and the ecosystem as a whole gains additional much-needed accessible learning resources.