leerho commented on issue #698:
URL: 
https://github.com/apache/datasketches-java/issues/698#issuecomment-3635089469

   I certainly applaud extending the library to more languages and Rust has
   been on my mind for a while.
   
   I am willing to set up a *datasketches-rust *repo so those of you that are
   interested can do your work there.  However, so far, none of the active PMC
   members are familiar with Rust. We would be totally dependent on the
   community of rust developers to maintain the ds-rust repo, long term. So,
   please, please, don't just throw stuff into this project and disappear!  I
   would suggest those of you who are interested discuss here how and who
   would be committed to long-term evolution of the ds-rust repo and its
   maintenance.
   
   There was a question about compatibility across languages that I would like
   to address.
   
   One of the things we have worked very hard to achieve is binary
   compatibility of the serialized sketch images across languages.  This is
   quite powerful.  Our serialization formats are just a blob of bytes where
   multibyte primitives are stored in LittleEndian format.  These formats are
   documented in the code and are platform, language and 3rd party
   insensitive.  If you look at the formats you will see that there are a few
   minor conventions.  An empty sketch can be represented in 8 bytes, and the
   first 3 of those 8 bytes are always the same. We can discuss more when the
   time comes.
   
   We don't really have "API compatibility" across the languages.  Every
   language has different conventions for expressing variables, methods,
   classes, etc., and each language implementation should follow those.  At a
   higher level, we would like to be able to perform the same kinds of
   analysis independent of the language and the exact form of the API.  If you
   examine our C++ and Java implementations you will see right away that they
   are quite different at the code level, but the functionality is very close
   to the same.
   
   We also try to limit 3rd party dependencies to ease adoption and to improve
   security and maintainability.  DS-java now has no runtime dependencies, C++
   has very few, and Python has a few.
   
   So far, we have 3 languages that have official Apache releases: Java, C++,
   and Python.  And I understand the folks contributing to Go are working on a
   release.  We would want the Rust component of the library to also have an
   official Apache release when it is ready.
   
   I welcome more comments!
   
   Cheers,
   Lee.
   
   
   
   
   
   
   
   
   On Tue, Dec 9, 2025 at 3:39 PM tison ***@***.***> wrote:
   
   > *tisonkun* left a comment (apache/datasketches-java#698)
   > 
<https://github.com/apache/datasketches-java/issues/698#issuecomment-3634736903>
   >
   > Back link -
   > https://lists.apache.org/thread/1x78l0m401qyyzxrmo0zdrxn4onq0q8b
   >
   > —
   > Reply to this email directly, view it on GitHub
   > 
<https://github.com/apache/datasketches-java/issues/698#issuecomment-3634736903>,
   > or unsubscribe
   > 
<https://github.com/notifications/unsubscribe-auth/ADCXRQXMDYEHO34BUKOLE2L4A5MR5AVCNFSM6AAAAACOQA32GWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTMMZUG4ZTMOJQGM>
   > .
   > You are receiving this because you are subscribed to this thread.Message
   > ID: ***@***.***>
   >
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to