kadena-io / pact

The Pact Smart Contract Language
https://docs.kadena.io/build/pact
BSD 3-Clause "New" or "Revised" License
581 stars 100 forks source link

Charge for decoding JSON #1265

Closed edmundnoble closed 1 year ago

edmundnoble commented 1 year ago

PR checklist:

Additionally, please justify why you should or should not do the following:

larskuhtz commented 1 year ago

Does this PR attach gas costs to operations that haven't been part of public language specification until now?

I wonder whether this makes gas cost dependent on implementation details that are not part of the surface semantics of pact. In particular, does this mean that changing the underlying serialization and storage format would become a forking change?

jwiegley commented 1 year ago

@edmundnoble This PR needs to be rebased, it contains an inverse of the prettyprinter PR, for example.

edmundnoble commented 1 year ago

@jwiegley it's based on the microgas branch, maybe it doesn't have it yet?

@larskuhtz yeah, it's not nice, but write's already gassed this way.

jwiegley commented 1 year ago

@edmundnoble In that case, perhaps the PR merge base should be changed to reflect which branch you're changes are a delta for?

edmundnoble commented 1 year ago

The base is microgas. I think the trouble is I merged master and microgas is still out of date. Once that's fixed I can rebase.

edmundnoble commented 1 year ago

Postponing for now.