Feeds

Other languages key to Java's future

Platform play nice with others

New hybrid storage solutions

QCon 2008 It is not the Java language that's important - it is the platform that has grown around it.

That's according to one veteran of architecture, design and distributed systems development now in the thick of training developers, who reckons the continued success of Java depends on its ability to adapt to modern development demands.

Venkat Subramaniam, the chairman of software training company Agile Developer, told QCon Java has grown beyond a language and the excitement is now centered on the combination of the Java platform with dynamic languages such as Groovy, JRuby and Jython.

"Multi-language environments mean you can get full interoperability between constructs created in different languages. Dynamic languages also give you the power of metaprogramming and domain-specific languages. This improves productivity and allows users to be more expressive," Subramaniam said

He added the combination of Java with other languages provides flexibility in development. "You can use techniques such as rule specification and let programs evolve to take dynamic decisions based on certain inputs or an application's state. You can also exploit the idiomatic differences of individual languages."

Subramaniam gave conference delegates several code demonstrations to illustrate how simple it is to combine Java code with a dynamic language. These included JavaScript and Groovy with language calls working in both directions.

"You can use Java JSR-223 as a standard interface for interoperability and use ScriptEngineManager to call in the script from the dynamic language. You can pick and choose between an invocable and a compilable interface - it depends on the circumstances and on which language you are using," Subramaniam said.

Subramaniam noted the compilable interface offered by Groovy made it simple to combine Java and Groovy code and use only a single pass to produce executable code. "Groovy 1.5 or later makes it easy - you just put in the J option and you can compile Groovy code into Java Bytecode. The Groovy compiler can compile both together in one go."

Sun Microsystems was quick to support Groovy when it was approved under the Java Community Process. Recently it has looked to expand the Java platform to support other dynamic languages such as Python and Ruby

The Register is a media sponsor of QCon London 2008.

Secure remote control for conventional and virtual desktops

More from The Register

next story
'Windows 9' LEAK: Microsoft's playing catchup with Linux
Multiple desktops and live tiles in restored Start button star in new vids
Not appy with your Chromebook? Well now it can run Android apps
Google offers beta of tricky OS-inside-OS tech
New 'Cosmos' browser surfs the net by TXT alone
No data plan? No WiFi? No worries ... except sluggish download speed
Greater dev access to iOS 8 will put us AT RISK from HACKERS
Knocking holes in Apple's walled garden could backfire, says securo-chap
NHS grows a NoSQL backbone and rips out its Oracle Spine
Open source? In the government? Ha ha! What, wait ...?
Google extends app refund window to two hours
You now have 120 minutes to finish that game instead of 15
Intel: Hey, enterprises, drop everything and DO HADOOP
Big Data analytics projected to run on more servers than any other app
prev story

Whitepapers

Secure remote control for conventional and virtual desktops
Balancing user privacy and privileged access, in accordance with compliance frameworks and legislation. Evaluating any potential remote control choice.
Saudi Petroleum chooses Tegile storage solution
A storage solution that addresses company growth and performance for business-critical applications of caseware archive and search along with other key operational systems.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.
Providing a secure and efficient Helpdesk
A single remote control platform for user support is be key to providing an efficient helpdesk. Retain full control over the way in which screen and keystroke data is transmitted.