-
Notifications
You must be signed in to change notification settings - Fork 469
Open
Labels
A-ink_storage[ink_storage] Work Item[ink_storage] Work ItemB-enhancementNew feature or requestNew feature or requestB-researchResearch task that has open questions that need to be resolved.Research task that has open questions that need to be resolved.C-discussionAn issue for discussion for a given topic.An issue for discussion for a given topic.P-highHigh priority issue.High priority issue.
Description
These two blog posts describe techniques for reducing monomorphization bloat by having only a thin generic interface layer, which immediately delegates to a non-generic implementation:
https://llogiq.github.io/2019/05/18/momo.html
https://matklad.github.io/2021/09/04/fast-rust-builds.html
The Hackernews comments also contain some good ideas: https://news.ycombinator.com/item?id=28425095.
There is also the momo crate, which implements a macro for this technique.
We should look into if this is applicable to ink!.
ascjones
Metadata
Metadata
Assignees
Labels
A-ink_storage[ink_storage] Work Item[ink_storage] Work ItemB-enhancementNew feature or requestNew feature or requestB-researchResearch task that has open questions that need to be resolved.Research task that has open questions that need to be resolved.C-discussionAn issue for discussion for a given topic.An issue for discussion for a given topic.P-highHigh priority issue.High priority issue.