intermediate representation
Raffaello Giulietti
raffaello.giulietti at supsi.ch
Tue Dec 23 10:40:31 UTC 2014
Hi Thomas,
I'm familiar with the beautiful and elegant Truffle/Graal framework, the
related papers and presentations, and the ongoing work on the languages
you mention.
What is attractive about the Nashorn team's approach, however, is that
the 100% compliant ECMAScript implementation works today on a pristine
JVMs, has official support (which is an immensely important selling
point in commercial environments) and has impressive performance. If you
add that the Nashorn people would like to put their experience and work
further by offering a complete toolkit for dynamic language
implementors, well, the choice whether to implement a language on
Truffle/Graal or on a Nashorn-like framework becomes a hard task.
Both approaches are interesting enough to be tried out.
On the one hand, I feel that Truffle/Graal is more productive today,
partly because of its intuitive DSL, partly because of its AST
interpreter approach. Unfortunately, as far as I know, it still doesn't
have the official support that would convince commercial customers.
Hence, although the chances are in its favor (it's too interesting to be
ignored), it's still unclear to me if Truffle/Graal will become a
mainstream product or if it will be confined in labs and be used by
aficionados only. (Too many interesting projects have followed this sad
fate.)
On the other hand, Nashorn is fully supported as a product but the
framework is probably not mature enough to be usable as a toolkit for
other languages. But since it has already won the battle against (often
stubborn and shortsighted) product managers, it has perhaps more
concrete chances for further development and further ideas.
Hard choice!
Cheers
Raffaello
On 2014-12-23 09:38, Thomas Wuerthinger wrote:
> Raffaello,
>
> Regarding your question about state of the art, you might also want to
> look at this paper from 2013:
> http://lafo.ssw.uni-linz.ac.at/papers/2013_Onward_OneVMToRuleThemAll.pdf.
> I do not think that it is the future dynamic languages toolkit Attila
> speaks about, but it might be related work. It is a dynamic languages
> toolkit with several open source projects building implementations on
> top of it:
> - Ruby: https://github.com/jruby/jruby/wiki/Truffle
> - R: https://bitbucket.org/allr/fastr
> - Python: https://bitbucket.org/ssllab/zippy
> - Smalltalk: https://github.com/smarr/TruffleSOM
>
> Cheers, thomas
>
>
>> On 22 Dec 2014, at 18:48, Raffaello Giulietti
>> <raffaello.giulietti at supsi.ch <mailto:raffaello.giulietti at supsi.ch>>
>> wrote:
>>
>> Hi,
>>
>> in some of the published presentations about Nashorn, Attila (on
>> behalf of the Nashourn team, I guess) speaks about his vision for a
>> dynamic languages toolkit to be used by language implementers
>> targeting the JVM. One of its main components is a new IR resembling
>> untyped JVM bytecode.
>>
>> I would be interested in hearing something more specific about this
>> topic.
>>
>> What is the current state-of-the-art?
>> What can be expected in the next few months?
>> Is there a discussion group somewhere?
>>
>> Greetings
>> Raffaello
>
More information about the nashorn-dev
mailing list