Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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
CIP-0087? | Maybe Datum #440
CIP-0087? | Maybe Datum #440
Changes from 15 commits
2b5657d
b5e2bd2
fba3e85
8f78a86
0e83bc0
8c60883
85571ab
268520e
ea298d7
cf6062e
ff548ac
a4c1afa
59071ce
9554212
44d817f
9c38bfb
c8e0d80
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To give another use case: There are situations where the sender should not need to be aware they are sending funds to a script.
An example to this are "Smart contract wallets". These wallets would lock funds in a script instead of a private key and can be used to implement do social recovery wallets or for-purpose debit accounts.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since this is the major competitor to your proposal, I think you need to say a lot more about why you think yours should be implemented instead!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@michaelpj Do you think there is value in implementing the
Maybe Datum
for now while we sort out theScriptArgs
? The main difference between the two is that theScriptArgs
is easily extendable, but there are still questions around it. TheMaybe Datum
proposal does not take us very far from the existing design. IMO the issues discussed in this CIP are pressing enough to prioritize fixing soon. If we implement theMaybe Datum
proposal first, we can then take our time sorting out theScriptArgs
. IfScriptArgs
is deemed to be better, how much different is the process of going from our current design toScriptArgs
than going from theMaybe Datum
design toScriptArgs
?Being able to sort out the
ScriptArgs
without the pressure caused by the discussed issues is my main argument for why we should do theMaybe Datum
. Basically, the idea is to use this CIP as a potential stopgap.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, absolutely not. Changes that require new Plutus ledger languages are very expensive because they require us to support old versions forever. I am extremely not keen to add something that we plan to remove later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@michaelpj Understood. Then I don't have an argument for choosing this proposal over the
ScriptArgs
one since I personally believe that, if theScriptArgs
can be added safely, it should be used. However, I think there is value in documenting what has been considered at each step of evolution for the design - this has been my main motivation for continuing to steel man this CIP despite thinking thatScriptArgs
would likely be better. I am totally fine with this proposal getting merged, but then marking its status as inactive onceScriptArgs
is ready. I'm not sure if the CIP process is meant to be used this way.Considering that you did something similar with #336, what are your thoughts about this? I'm willing to wait until the
ScriptArgs
proposal is ready and then try arguing against it.