Hi,

For the Vert.x project I've created a simple Promise implementation as
available in a Browser.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise

I've then played with babel to transpile the ES7 async - await to Promises
and I must say that it works fine under Nashorn.

Now my concern is that since this code is always in the hot-path I'd like
to translate it to Java so it could be executed/jitted faster, however the
Promise API has a small issue with that, it defines a method named: "catch"

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/catch

This is forbidden name for a java method since according to the JLS "catch"
is a reserved word and Java is way more strict than JS. My question is, now:

Do I need to implement this using the JSObject interface where I can react
to a "getMember" to return a Function and then handle it on the "call"
method, or is there some "magic" where I can keep it all under a single
Java object and make an alias?

I expect that if I implement the JSObject that I'll start making to many
small lived objects and the performance improvements would be lost with the
GC pressure...

Reply via email to