Interop made easy & more in Truffle 0.11
Jaroslav Tulach
jaroslav.tulach at oracle.com
Tue Feb 2 09:02:48 UTC 2016
Hi,
the Truffle git repository[1] contains tag truffle-0.11 - what you can expect
in this new version of Truffle API?
Matthias has been working hard on simplified interoperability API. Originally
the interop required a lot of boiler plate code which can now be auto
generated thanks to AcceptMessage[2] and its associated annotation processor.
Matthias also added new InteropException[3] and its subclasses to help people
calling into foreign languages (via new sendXYZ methods in ForeignAccess[4])
to be ready for exceptional states and handle them appropriately.
Stefan contributed method to easily pass any language any configuration
parameters[5] which is way more easy to use than so far preferred globalSymbol
one.
Chris added a check whether given mime type is supported[6] - now you can find
out if another language is installed in the system before sending it an empty
snippet for evaluation.
Thanks to Gilles, the bits were just uploaded to Maven central[7]. Enjoy
truffle-0.11!
-jt
PS: I'd like to release next version of Truffle at the end of March 2016[8].
[1] https://github.com/graalvm/truffle/tree/truffle-0.11
[2] http://lafo.ssw.uni-linz.ac.at/javadoc/truffle/latest/com/oracle/truffle/api/interop/AcceptMessage.html
[3]
http://lafo.ssw.uni-linz.ac.at/javadoc/truffle/latest/com/oracle/truffle/api/interop/InteropException.html
[4] http://lafo.ssw.uni-linz.ac.at/javadoc/truffle/latest/com/oracle/truffle/api/interop/ForeignAccess.html
[5] http://lafo.ssw.uni-linz.ac.at/javadoc/truffle/latest/com/oracle/truffle/api/vm/PolyglotEngine.Builder.html#config-java.lang.String-java.lang.String-java.lang.Object-[6] http://lafo.ssw.uni-linz.ac.at/javadoc/truffle/latest/com/oracle/truffle/api/TruffleLanguage.Env.html#isMimeTypeSupported-java.lang.String-[7] http://repo1.maven.org/maven2/com/oracle/truffle/truffle-api/0.11/
[8] +-3m: http://wiki.apidesign.org/wiki/Estimate
More information about the graal-dev
mailing list