I like a LOT of these comments, but some just leave me scratching my head:
// bad void function() { /* IIFE / }();
// good (function() { / IIFE */ }());
To me, the "bad" one was more readable until I noticed you were invoking the function. Personally, I don't like either notation, but the point is that this example (along with quite a few others) seems to need more explanation to get the point across.
I would maybe think about defining "IIFE" as well as maybe sectioning off the more "functional programming" sections.
Thank you for taking the time to put this together.