ceylon/ceylon-js — comment on commit ad85d55a8c63e5b27f2862d5ba3df992dd49643e
File:  line 0
By chochos:

So this covers both cases:

`obj?.member` becomes `function($){$===null?null:$.member}(obj)` -- if `obj` is null, function returns null, otherwise returns obj.member

`obj?.f()` becomes `function($){$===null?nullsafe:$.f}(obj)()` if `obj` is null, returns the `nullsafe` function, otherwise returns obj.f, and then the returned function (either obj.f or nullsafe) is invoked.