Message from JavaScript discussions
July 2017
— Basically it lets you change behavior, or change state that affects behavior (called injecting advice
) of a function
One big use of it too is just composing an entire web app with AOP to allow easy turning on/off features
— If all your aspects/concerns are seperated/connected by pointcuts it makes it very easy
— Omg this is awesome... compose a strategy of an ordered list of aspects which chain together... put traversal algorithm up top as an iterator, diff under that, and clone under that
— Then I pass the iterator object down and have it loop, the entry function to diff
calling next
on it
— Hmm, maybe the iterator advancement function can be it's own aspect under the generator
— Then I can re-use that bit
— This book helps me alot in js ☝️
— Iddfs -> iterator advancer -> diff -> clone -> loop back to iterator advancer
— And ofc state is passed back and forth to all these naturally
— What I don't like is the amount of function calls, wow
— Kek