fast-float-rust
Super-fast float parser in Rust (now part of Rust core) (by aldanor)
roxmltree
Represent an XML document as a read-only tree. (by RazrFalcon)
fast-float-rust | roxmltree | |
---|---|---|
10 | 4 | |
266 | 403 | |
- | - | |
0.0 | 7.3 | |
over 1 year ago | 4 months ago | |
Rust | Rust | |
Apache License 2.0 | Apache License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
fast-float-rust
Posts with mentions or reviews of fast-float-rust.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-08-02.
-
Good example of high performance Rust project without unsafe code?
I'd like the mention my own refactoring of fast-float-rust to remove nearly all unsafe code for merging into Rust core library which left the performance identical to the previous implementation.
- Exploring Rust performance on Graviton2 (AWS aarch64 CPUs)
-
Making Rust Float Parsing Fast: libcore Edition
JSON is an interesting example, since the syntax of valid floats is slightly different than what Rust expects. Luckily, I'm the author of a minimal, and am also the author of a PR to bring this to fast-float-rust.
-
Eisel-Lemire Algorithm
[4] https://github.com/aldanor/fast-float-rust/
-
Number Parsing at a Gigabyte per Second
It seems also dependent on the processor: https://github.com/aldanor/fast-float-rust/#intel-i7-4771
-
fast-float - a super-fast float parser in Rust
I've already done that (just pushed it - here).
roxmltree
Posts with mentions or reviews of roxmltree.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-06-09.
-
What are the scenarios where "Rewrite it in Rust" didn't meet your expectations or couldn't be successfully implemented?
This is exactly what I needed when implementing xml-mut :D I have used roxmltree instead and manipulated text directly. will try to rewrite it using Xot.
-
Surprises in the Rust JSON Ecosystem
In regards to the benchmarks, It makes sense to measure serializing/deserializing for parser crates. but since we are talking about dom implementations, metrics like traversal/iteration speed or insert/modification performance would be useful. a good example is roxmltree crate (readonly xml dom) which benches traversal/iteration performance and shows that by only focusing on readonly usecases, it gains substantial performance gains.
-
What are some less popular but well-made crates you'd like others to know about?
For xml parsing, I find https://github.com/RazrFalcon/roxmltree as a really good crate. It’s fast, light, and well documented/maintained. I have so much respect for the maintainer’s approach to merging PRs and the way they consider what’s important for the crate
-
fast-float - a super-fast float parser in Rust
I understand. But I've also wrote enough parsers and performance sensitive code in Rust (ttf-parser, tiny-skia, roxmltree). And in my experience, unsafe is not needed in 99% of the cases. Even something as performance sensitive as tiny-skia is unsafe-free (with some nuances).
What are some alternatives?
When comparing fast-float-rust and roxmltree you can also consider the following projects:
fast_float - Fast and exact implementation of the C++ from_chars functions for number types: 4x to 10x faster than strtod, part of GCC 12 and WebKit/Safari
json - Strongly typed JSON library for Rust
rand - A Rust library for random number generation.
Clipper2 - Polygon Clipping and Offsetting - C++, C# and Delphi
quick-xml - Rust high performance xml reader and writer
rust - Rust for the xtensa architecture. Built in targets for the ESP32 and ESP8266
log4rs - A highly configurable logging framework for Rust
rust-lexical - Fast numeric to- and from-string conversion routines.
rust - Empowering everyone to build reliable and efficient software.
cargo-fuzz - Command line helpers for fuzzing