Tim Yung and I have hacked on a reference implementation for the "Existential Operator" using esprima-fb and jstransform: "a?.b" Example: a?.b => (a == null ? void 0 : a.b) a?.b.c => (a == null ? void 0 : a.b.c) This must also make sure that a only gets evaluated a single time. Based on previous discussions on es-discuss and TC39, it seems that this was tabled for ES6. I think now is a good time t