An R interface to FLINT

7 views
Skip to first unread message

Mikael Jagan

unread,
Sep 21, 2025, 10:22:37 PM (10 days ago) Sep 21
to flint-devel
Dear all,

I wanted to quickly advertise a new-ish (<1 year) R interface to FLINT, namely the R package 'flint', which can be installed from CRAN with install.packages("flint").


The package extends R with classes (ulong, slong, fmpz, fmpq, mag, arf, acf, arb, acb) suitable for representing vectors, matrices, and more general arrays of the underlying C type.  A basic design goal has been complete interoperability with basic R vectors, meaning that operators automatically promote arguments when classes are mixed.  And by providing methods for R's many generic functions, the package ensures that users are able to write entirely idiomatic R code.

The interface is hardly complete, and it is intended that R functions mirroring entry points in the C library will be added mainly "by request" of interested users.

I also write to politely request a bit of notice about major ABI-breaking changes in the C library, such as the recent change from 'rows' to 'stride' in the matrix types.  I am able to adapt on my end with additional configure tests, but ideally those changes would occur ahead of the ABI-breaking FLINT release, so that CRAN does not see a disruption.  (CRAN removes packages that fail to compile and pass all tests on any of its platforms.)

That's all for now.  Once I've expanded the documentation a bit, I may ping to ask that some usage examples are included at https://flintlib.org/doc/.

Thanks for all of your work on this project.

Mikael Jagan
Reply all
Reply to author
Forward
0 new messages