2 ms·
> ...the .NET libraries were poor. DuckDB's Node bindings leave a lot to be desired, as well. WASM bindings have a different API surface, too. From my reading
by ignoramous 5y ago
> ...the .NET libraries were poor.
DuckDB's Node bindings leave a lot to be desired, as well. WASM bindings have a different API surface, too. From my reading of the code and docs, it looks like duckdb 3p bindings for anything other than python is in dire need fit and polish.
- ankoh 5y agoWe're still on a journey to explore what APIs work best with JavaScript but the differences between WASM and Node are on purpose. DuckDB-Wasm has isolated wasm heap memory and runs in a separate web worker. That's why we serialize everything as Arrow IPC buffer and pass the ArrayBuffer through the workers message API as transferrable. On Node.js, we can interact with DuckDB much more easily and don't want to pay the price for the IPC stream every time. The truth is, we tried quite a few different APIs and this turned out the be a good trade off between efficiency and convenience. But I'm happy to discuss this further if you have any suggestions.