Path to ES6, ES7?

corbettbrasing1
Mega Guru

Is there current roadmap to upgrade the platform to ES6, or 7?   I know Helsinki upgraded it to ES5.

56 REPLIES 56

Raymond Ferguso
Tera Contributor

Not to step on your namesake, but "now" would be a perfect time for servicenow to invest in an early graalvm project.  This would pull in graaljs which is ES8 (ES2017) compliant and is the new Java JS implementation.

Historically, Nashorn replaced Rhino but has recently been deprecated in favor of the emerging Graaljs that sits on a newer high performance compiler and polyglot abstraction layer.  In fact, they can even support npm and their own implementation of node. Python is in the works as is ruby, R, C, C++ and llvm.  It's pretty cool.

After poking at a midserver on graalvm, I can say it seems to work fine.  The underlying JVM is 1.8, but replaces the compiler and adds some features.  Anyway, their in RC# stages right now and rounding the corner on 1.0.  They should have a few dot releases completed by the time you round the bend on a major effort like this, but the payback could be huge if your workload sees the massive performance improvements others are reporting, and the giant leap in JS support would really kick the dust off some ageing components in a big way!

Amen.

Absolutely!

Say...  If you do put together a graaljs team to dig into replacing rhino and updating the jvm, I would love to be a part of that project.  You would probably want to attract some "A" string computer science talent to something that big, but I would be happy to follow their lead and make a significant contribution on a team.

I'm sure it can work. It may take a year, but over that time graaljs will get better as the older jvm and rhino become even more of a burden.  Seems like justifiable ROI.  Where should I send my CV?

corbettbrasing1
Mega Guru

The other part of this that is also relevant and also is the worst byproduct of this....is loss of good people (talent) in the ServiceNow space due to

" Unfortunately ServiceNow uses the ageing Mozilla Rhino server side JavaScript engine. Unlike Node.js (another server side JavaScript engine), it has not been keeping up with modern  ECMAScript standards. ...., means that ServiceNow is getting further behind as time passes. Modern coders who are taught the modern standards, will eventually get very frustrated when they have to downgrade their coding style by a generation (somebody say "Jelly script"?). "

 

Developers will simply leave because of this.  I can speak from personal experience on this one, had I not joined Nuvolo (where we make product on the store) I was intending on leaving the SN space because it just didnt feel like a "professional development space".   All the reasons for me were due to not keeping up with modern development practices like no mature TDD (which SN's still is behind as you STILL cannot unit test scoped script includes even in London with the Jasmine framework).  It is also boring to work in old spaces.

 

Let us not forget the impact on Talent in our space as we encourage ServiceNow to consider the business decision of a change like Graaljs....as really there are NO business problems...there are only people problems.