You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It has been a long-term goal of mine, to include the totality of the R C-API in libR-sys.
Right now, libR-sys only serves as a sys-crate for extendr, and it primarily follows the needs of extendr.
But it would be nice if libR-sys could be used for all R-API needs in Rust.
There are challenges that need to be dealt with before this can be a reality:
Faster processing of bindings, as right now, in modern_libr uses clang to filter out elements. Luckily, we are about to land Remove clang-sys dependency #238 that serves as a schematic for how to accomplish this.
Paths to module-files has to be target, R version and platform dependent. This means that the module notation of #[path = <path>] has to depend on these things, for the seamless experience, that is.
The text was updated successfully, but these errors were encountered:
It has been a long-term goal of mine, to include the totality of the R C-API in
libR-sys
.Right now,
libR-sys
only serves as a sys-crate forextendr
, and it primarily follows the needs of extendr.But it would be nice if
libR-sys
could be used for all R-API needs in Rust.To that end, I've made a prototype of how such a project can look like, see
https://github.com/CGMossa/modern_libr
(see discord discussion for reference)
https://discord.com/channels/751419551132155925/751419551132155928/1136068899507540078
Essentially, the resulting
lib.rs
will roughly look like thisDetails
There are challenges that need to be dealt with before this can be a reality:
modern_libr
uses clang to filter out elements. Luckily, we are about to land Removeclang-sys
dependency #238 that serves as a schematic for how to accomplish this.target
, R version and platform dependent. This means that the module notation of#[path = <path>]
has to depend on these things, for the seamless experience, that is.The text was updated successfully, but these errors were encountered: