Turbocall – Just-in-time compiler for Deno FFI
1–10 of 14 posts
Re: Turbocall – Just-in-time compiler for Deno FFI
#2Thus something like this would need a similar tool.
Re: Turbocall – Just-in-time compiler for Deno FFI
#3Re: Turbocall – Just-in-time compiler for Deno FFI
#4Re: Turbocall – Just-in-time compiler for Deno FFI
#5Honestly I feel like they should work first on API compatibility with NodeJS just so that it can be easier to adopt/migrate seamlessly, then try more improvements in the runtime. It's nice that they have performance optimizations but what are they good for when I can't use Deno because it's not compatible/missing APIs?
Re: Turbocall – Just-in-time compiler for Deno FFI
#6This is one of the approaches for FFI taken by other runtimes, however it has the issue that without binding generators (jextract, P/Invoke code generators, ctypesgen), the type declarations are a pain to write. Thus something like this would need a similar tool.
I have written a partial solution for C, though it is bespoke for my libclang bindings, and a very rough one for C++. Both of these require more work to really be ready-to-use tools however.
[1] libclang C binding generator: https://github.com/aapoalas/libclang_deno/blob/main/build/bu...
[2] C++ binding generator: https://github.com/aapoalas/txx
Re: Turbocall – Just-in-time compiler for Deno FFI
#7This is one of the approaches for FFI taken by other runtimes, however it has the issue that without binding generators (jextract, P/Invoke code generators, ctypesgen), the type declarations are a pain to write. Thus something like this would need a similar tool.
deno_bindgen exists which can be used to do this from Rust. I have written a partial solution for C, though it is bespoke for my libclang bindings, and a very rough one for C++. Both of these require more work to really be ready-to-use tools however. [1] libclang C binding generator: https://github.com/aapoalas/libclang_deno/blob/main/build/bu... [2] C++ binding generator: https://github.com/aapoalas/txx
Re: Turbocall – Just-in-time compiler for Deno FFI
#8TL;DR: similar speedups! It works well
Re: Turbocall – Just-in-time compiler for Deno FFI
#9Re: Turbocall – Just-in-time compiler for Deno FFI
#10Honestly I feel like they should work first on API compatibility with NodeJS just so that it can be easier to adopt/migrate seamlessly, then try more improvements in the runtime. It's nice that they have performance optimizations but what are they good for when I can't use Deno because it's not compatible/missing APIs?
In this hypothetical, eventually being on node would become like still being on java 8 is today.