fantasy-land compatible sweet.js macros