Announcing Truffle Test Compatibility Kit

Jaroslav Tulach jaroslav.tulach at oracle.com
Thu Jun 18 15:22:52 UTC 2015


Dear language implementors.
The other thing I worked on in last weeks is called TCK - a test compatibility 
kit. I don't know what language you work on, but one of great Truffle features 
is interoperability - a way to execute multiple Truffle based languages next 
to each other and let them talk to each other. However such languages need to 
be ready for such interaction. This is exactly what I'd like to solve by a 
TCK.

I designed TruffleTCK class:
http://lafo.ssw.uni-linz.ac.at/hg/truffle/file/3e7fc5f743ed/truffle/com.oracle.truffle.tck/src/com/oracle/truffle/tck/TruffleTCK.java

If you have your own language, you can subclass the class and create 
YourLanguageTest. There are abstract methods you must implement - once done, 
the @Test methods will run against your language and verify whether it is 
compliant with other Truffle languages.

Hopefully the Javadoc is self-explanatory. In addition to that there is a 
sample usage of the TruffleTCK in our demo Simple Language:
http://lafo.ssw.uni-linz.ac.at/hg/truffle/file/3e7fc5f743ed/truffle/com.oracle.truffle.sl.test/src/com/oracle/truffle/sl/test/SLTckTest.java

To get the TCK, you either need most recent build from Truffle repository or 
you can get a binary snapshot from our Maven repo:
http://lafo.ssw.uni-linz.ac.at/nexus/content/repositories/snapshots/com/oracle/truffle-tck/
the 0.8-3e7fc5f743edc70d762b6f99af9e92822cdb684a-SNAPSHOT version corresponds 
to the 3e7fc5f743ed repository version.

In case you are working on a language and would like to use the TCK don't 
hesitate to contact me and we can resolve any problems.
-jt





More information about the graal-dev mailing list