Server Side JavaScript - an overview
" JavaScript? Isn't that the browser thing to add useless animations to your website?" Despite all web2.0 hype this is a question corporate developers or managers still ask from time to time. When telling them about Server Side JavaScript (SSJS for short) they reply in disbelieve: " That must be some IBM thing". To some extend it is true. IBM ships three different SSJS implementations in their products:
So it is really time to give the curly brackets a try.
Want to know more? Visit my Lotusphere 2011 AD103 session.
- IBM's own j9 JRE/JDK 6.0 includes, following the Java JSR 223 an implementation of Mozilla's Rhino SSJS engine (try for yourself. Open a command prompt and type
jrunscript
. You will be greeted with an JavaScript command prompt - works also with the JVM that ships with the Notes client) - The second implementation can be found in Project Zero and its commercial implementation WebSphere sMash
- Last not least there are XPages with its JVM based SSJS implementation.
- NodeJS is based on Google's V8 JavaScript engine that also powers the Chrome browser.
- A number of extension build on top of NodeJS:
- Flusspferd is written in C++, uses Mozilla's SpiderMonkey JS engine and provides C++ language bindings. Will extend to newer engines when available.
- CommonJS defines a common set of APIs for SSJS. From the description:
"The CommonJS API will fill that gap by defining APIs that handle many common application needs, ultimately providing a standard library as rich as those of Python, Ruby and Java. The intention is that an application developer will be able to write an application using the CommonJS APIs and then run that application across different JavaScript interpreters and host environments. ".
There is a long list of implementations including NodeJS and Apache CouchDB.
I do not know to what extend IBM does or will support CommonJS, nevertheless it is a development to keep an eye on - The Jaxer application server is offered by the same team who brought us the outstanding Aptana JS IDE for Eclipse
- Erbix Application Server, featuring an online IDE
- ejscript from embedThis Inc
- Mynajs application server based on Rhino
- For brave souls: mod_js a Apache HTTP plug-in
So it is really time to give the curly brackets a try.
Want to know more? Visit my Lotusphere 2011 AD103 session.
Posted by Stephan H Wissel on 18 January 2011 | Comments (3) | categories: Software