As I may see from grammar of ES2015 this expression is not a valid one:
() => { console.log("hello"); } ();
You need at least put parentheses:
(() => { console.log("hello"); }) ();
Chrome fails on first sample with Uncaught SyntaxError: Unexpected token (
But Babel is ok with that. Why?