Truffle and mlvm
thomas.wuerthinger at oracle.com
Sat Aug 30 04:15:57 UTC 2014
It is possible to use Truffle for parts of the functionality of your language while the language itself is implemented with a bytecode generation approach (e.g., native extensions or regular expressions). Overall, I still believe that sometimes a larger step is needed when current techniques start to reach local maxima.
On 29 Aug 2014, at 22:59, Mark Roos <mroos at roos.com> wrote:
> Moving from the startup thread.
> Thomas has been wondering why using Truffle as a solution is not getting immediate
> traction. I was initially, and continue to be, quite interested in Truffle. So how could
> Truffle help out us non Java on the JVM developers to the point where we could be a
> driving force behind it. First note that myself and I would guess all language implementers
> ( as compared to researchers ) are like Marcus, very pragmatic. Small changes are welcome
> but wholesale ones are seen as a barrier. So to use Truffle I would want to see it as an
> addition to the jvm which addresses one of my specific issues.
> The issue that I have where the solution is not evident is in the creation of primitive
> methods. A primitive method in Smalltalk takes the arguments and some constants
> and executes object code to deliver the result. Traditionally written C or assembler
> I now use Java and JNI. Since we have the equivalent to value types (wrapped byte)
> primitives can be quite important for our vector math ops performance.
> What would be very nice would be to attach a truffle.jar, pass it some data structure
> which defines a primitive and get back a method handle wrapping some optimized object code.
> Given that this MH comes from a known source perhaps the jni like overhead could
> be much reduced similar to an intrinsic.
> This would be much simpler, I would guess, then the Panama effort to wrap arbitrary code.
> Plus I would not have to have a pre made object file per external environment.
> mlvm-dev mailing list
> mlvm-dev at openjdk.java.net
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the mlvm-dev