Skip to content
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

Feature Request: Separate 'In Memory' Module for External Import #251

Open
jf-li00 opened this issue Dec 5, 2023 · 1 comment
Open

Feature Request: Separate 'In Memory' Module for External Import #251

jf-li00 opened this issue Dec 5, 2023 · 1 comment

Comments

@jf-li00
Copy link

jf-li00 commented Dec 5, 2023

I propose extracting the 'In Memory' functionality as a standalone module so other developer can import those data structures for their own purpose conveniently(e.g. write a simple custom simulator for EVM contracts)

@sorpaas
Copy link
Member

sorpaas commented Dec 6, 2023

The current "in memory" backend uses Clone for all substate layers, which is extremely inefficient -- that's why it's only in tests. I'm planning to add two proper in-memory backends in the future that uses a) journaling (where state commit is cheap) and b) overlay (where state revert is cheap).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants