Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

System-level API #2

Open
ambrosejcarr opened this issue Dec 18, 2021 · 3 comments
Open

System-level API #2

ambrosejcarr opened this issue Dec 18, 2021 · 3 comments

Comments

@ambrosejcarr
Copy link
Member

@nlhepler requests a system-level language:

I would recommend a "system-level" language here as well, if possible, for high-performance applications. Perhaps as a longer-term goal. We use Rust at 10x, but C++ might be easier to support given TileDB's existing API.

@evanbiederstedt
Copy link

evanbiederstedt commented Mar 19, 2022

FWIW, I'd recommend writing out the specifications for this given the current TileDB C++ API, similar to how this was done in Python here:
https://github.com/single-cell-data/matrix-api/blob/main/specification.md#proposed-single-cell-python-api

RE:

We use Rust at 10x, but C++ might be easier to support given TileDB's existing API.

I'd agree. I don't think we need to worry too much about C++ or Rust yet e.g. assuming the current TileDB C++ API is used, a Rust wrapper could be written. If someone in the meantime completely translates the C++ API into Rust, that would be a different discussion.

CC @stavrospapadopoulos

@stavrospapadopoulos
Copy link
Member

Agreed. We've always contemplated about writing a TileDB Rust API. We can accelerate it if needed in the near future, but for now the C++ API should suffice.

@pablo-gar
Copy link
Member

pablo-gar commented Feb 4, 2023

tiledbsoma has c++ libraries upon which python and R APIs are built. There are no current plans to create a public c++ SOMA API in the foreseeable future.

However SOMA objects created throught tiledbsoma can be accessed via tiledb's c++ API.

Leaving this issue open for now for reference and in case we would want to revisit at later point.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants