Answer
call(ctx, ...args)— invoke now with explicitthisand individual args.apply(ctx, argsArray)— same, args as array.bind(ctx, ...args)— returns a new function permanently bound toctx.
Explain call/apply/bind and implement polyfills for each.
call(ctx, ...args) — invoke now with explicit this and individual args.apply(ctx, argsArray) — same, args as array.bind(ctx, ...args) — returns a new function permanently bound to ctx.