-
-
Notifications
You must be signed in to change notification settings - Fork 98
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TODOs :: Road to β #754
Comments
Is this for generating types and serialization? Very excited for that. Would appreciate Rust type :) Also, extism seems like a wasm thing. Curious how that's related to generated types. |
@MitchTurner thats exactly what it is about, generating boilerplate smart constructors and serialisation code for datum and redeemers. Extism here is used as a decoupling mechanism. We don't want to be writing all the code generation for all languages ourselves. So we need a way for the Aiken cli to delegate part of the generation to "plugins". So that in Aiken, we handle the parsing and processing of the blueprint and we hook onto plugins for generating the actual code. Rust is something we'd like to have eventually and it would be a nice trial if you want to give it a try and build the Rust plug-in! |
Nice. Yeah I'd be open to help out on the Rust plugin. That's the biggest pain point with Naumachia rn, manually writing the PlutusData conversions for Rust types. It'll be great to have the types handed to you from your Aiken code 🤝 |
This issue summarizes the work remaining work we foresee for the β-release of Aiken. Items are settled and some may be added as needed. But it gives a general overview.
Off-chain code generationJavaScriptPythonHook extism plugins into a framework for code-gen (parsing & processing blueprints).Note
We will no longer be addressing this since it has proven to be a non-problem. What we are observing in practice are frameworks (e.g. translucent, bloxbean, Plutus-Tx...) providing their own support for CIP-0057 Plutus blueprints which are bespoke for the language they live in. This is better than a clunky plugin system based on a portable VM.
Language Server Protocol
and
andor
sectionsCore Improvements
Data
(because for example, it is put in a List or a Tuple). Then ensure that:String
,G1Element
andG2Element
. These can be stored inData
by casting them to a ByteArray using the VM's builtins, and cast back into their respective types when pulled out. This comes at an extra cost, hence the warning. In general, one would want to avoid that.Plutus V3
Property-based testing framework
- [x] Leveraging the new reification capabilities to show operands as Aiken expressions (instead of raw UPLC data)
- [x] Ensure annotations also support the
and
andor
keywordsCommand-line
aiken export
#843uplc
command groupjq
. This is particularly useful for tests outputs.Aikup
aiken packages
/aiken add
commands #492QA
last-pieceprimetestqueensIssues to be drafted
The text was updated successfully, but these errors were encountered: