Representation of a
Dynamic object storage model.
Various utility classes that aim to make the development of TruffleLanguage guest languages easier.
The Truffle Tutorial
Truffle Tutorial: Background
Truffle Tutorial: Embedding Truffle Languages in Java
Truffle Tutorial: The Graal Compiler
Truffle Tutorial: Implementing a New Language with Truffle
Truffle Tutorial: Implementing an LLVM-based Language with Sulong
The debug package contains a debugger API that can be used to install breakpoints, step through and control the execution of Truffle guest language applications.
The instrumentation API provides a way to introspect and inject behavior into interpreters written using the Truffle framework.
This package provides inter-operability between different
Domain specific language for using the Truffle dynamic object storage model to create classic class hierarchies.
A profile is a Truffle utility class that uses the
Ignore: Internal API.
Truffle Tutorial gives
you the best introduction to to Truffle:
the Open Source framework for implementing programming languages with very high performance, Java embedding,
language interoperation, debugging, and general tooling support.
The Truffle API values work of its adopters and as such it is developed with compatibility in mind. Methods and features are not removed and renamed randomly, without a notice and there is a binary compatibility testing framework in place to verify that.
On the other hand the Truffle project is still young and needs a way to refine and change previously taken decisions. To balance the need between compatibility and give us a way to remove things from the API we following these rules:
By deprecating parts of API while keeping them functional we are giving users of the Truffle API time to adjust to required changes and (under the assumption they pay attention to warnings in the code base) easily identify and migrate to more modern API alternatives.