Description
Is your feature request related to a problem? Please describe.
Cardano developers may have a hard time debugging their script, as they need to understand the whole Haskell/Pluto stack.
Describe the solution you'd like
Imperator/pyscc provides a compiler from a subset of Python into UPLC, in other words a programming language for Smart Contracts on Cardano, that IS python.
When adding an Imperator script as a script input to a transaction in pycardano, this means that we could offer to evaluate the script during transaction building and signing. This includes being able to step through the Script as it is being evaluated with a normal python debugger.
What we need for this?
- A flag to signify an added script input is actually an imperator script (and the corresponding source file)
- A hook inside the transaction builder that calls the imperator script with the correct parameters (i.e. ScriptContext etc)
- Optimally: Imperator/pycardano using the same definition for PlutusData
Describe alternatives you've considered
None
Additional context
I am developing Imperator/pyscc and can provide the parts of support that are needed on that end. Currently, I am looking into integrating the pycardano definitions of PlutusData and looking for a place where I could add the evaluation hook.