-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Many times there are attributes you want to include in a POP for utility purposes, but they shouldn't be in the end result(after unpopping). There should be some way to mark certain attributes as special.
This could also replace #1 since you can just add extenders in a pop's extension and mark those attributes as "special", so they get removed when unpopping.
p = pop {
defaults.value = 0;
extension = self: super: {
# Mark increment as "special" somehow
increment = pop { supers = [ self ]; extension = _: _: { value = super.value + 1; }; };
};
}
unpop (p.increment.increment) => { value = 2; }
or with #7
pop {
defaults.value = 0;
extension = self: super: {
increment = self (self: super: { value = super.value + 1; });
};
}
cc @fare
Metadata
Metadata
Assignees
Labels
No labels